template_test.go 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. package gen
  2. import (
  3. "os"
  4. "path/filepath"
  5. "testing"
  6. "github.com/stretchr/testify/assert"
  7. "github.com/zeromicro/go-zero/tools/goctl/model/sql/template"
  8. "github.com/zeromicro/go-zero/tools/goctl/util/pathx"
  9. )
  10. func TestGenTemplates(t *testing.T) {
  11. err := pathx.InitTemplates(category, templates)
  12. assert.Nil(t, err)
  13. dir, err := pathx.GetTemplateDir(category)
  14. assert.Nil(t, err)
  15. file := filepath.Join(dir, "model-new.tpl")
  16. data, err := os.ReadFile(file)
  17. assert.Nil(t, err)
  18. assert.Equal(t, string(data), template.New)
  19. }
  20. func TestRevertTemplate(t *testing.T) {
  21. name := "model-new.tpl"
  22. err := pathx.InitTemplates(category, templates)
  23. assert.Nil(t, err)
  24. dir, err := pathx.GetTemplateDir(category)
  25. assert.Nil(t, err)
  26. file := filepath.Join(dir, name)
  27. data, err := os.ReadFile(file)
  28. assert.Nil(t, err)
  29. modifyData := string(data) + "modify"
  30. err = pathx.CreateTemplate(category, name, modifyData)
  31. assert.Nil(t, err)
  32. data, err = os.ReadFile(file)
  33. assert.Nil(t, err)
  34. assert.Equal(t, string(data), modifyData)
  35. assert.Nil(t, RevertTemplate(name))
  36. data, err = os.ReadFile(file)
  37. assert.Nil(t, err)
  38. assert.Equal(t, template.New, string(data))
  39. }
  40. func TestClean(t *testing.T) {
  41. name := "model-new.tpl"
  42. err := pathx.InitTemplates(category, templates)
  43. assert.Nil(t, err)
  44. assert.Nil(t, Clean())
  45. dir, err := pathx.GetTemplateDir(category)
  46. assert.Nil(t, err)
  47. file := filepath.Join(dir, name)
  48. _, err = os.ReadFile(file)
  49. assert.NotNil(t, err)
  50. }
  51. func TestUpdate(t *testing.T) {
  52. name := "model-new.tpl"
  53. err := pathx.InitTemplates(category, templates)
  54. assert.Nil(t, err)
  55. dir, err := pathx.GetTemplateDir(category)
  56. assert.Nil(t, err)
  57. file := filepath.Join(dir, name)
  58. data, err := os.ReadFile(file)
  59. assert.Nil(t, err)
  60. modifyData := string(data) + "modify"
  61. err = pathx.CreateTemplate(category, name, modifyData)
  62. assert.Nil(t, err)
  63. data, err = os.ReadFile(file)
  64. assert.Nil(t, err)
  65. assert.Equal(t, string(data), modifyData)
  66. assert.Nil(t, Update())
  67. data, err = os.ReadFile(file)
  68. assert.Nil(t, err)
  69. assert.Equal(t, template.New, string(data))
  70. }