12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- package gen
- import (
- "os"
- "path/filepath"
- "testing"
- "github.com/stretchr/testify/assert"
- "github.com/tal-tech/go-zero/core/logx"
- )
- var (
- source = "CREATE TABLE `test_user_info` (\n `id` bigint NOT NULL AUTO_INCREMENT,\n `nanosecond` bigint NOT NULL DEFAULT '0',\n `data` varchar(255) DEFAULT '',\n `content` json DEFAULT NULL,\n `create_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP,\n `update_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,\n PRIMARY KEY (`id`),\n UNIQUE KEY `nanosecond_unique` (`nanosecond`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;"
- )
- func TestCacheModel(t *testing.T) {
- logx.Disable()
- _ = Clean()
- dir, _ := filepath.Abs("./testmodel")
- cacheDir := filepath.Join(dir, "cache")
- noCacheDir := filepath.Join(dir, "nocache")
- defer func() {
- _ = os.RemoveAll(dir)
- }()
- g := NewDefaultGenerator(source, cacheDir, NamingLower)
- err := g.Start(true)
- assert.Nil(t, err)
- assert.True(t, func() bool {
- _, err := os.Stat(filepath.Join(cacheDir, "testuserinfomodel.go"))
- return err == nil
- }())
- g = NewDefaultGenerator(source, noCacheDir, NamingLower)
- err = g.Start(false)
- assert.Nil(t, err)
- assert.True(t, func() bool {
- _, err := os.Stat(filepath.Join(noCacheDir, "testuserinfomodel.go"))
- return err == nil
- }())
- }
- func TestNamingModel(t *testing.T) {
- logx.Disable()
- _ = Clean()
- dir, _ := filepath.Abs("./testmodel")
- camelDir := filepath.Join(dir, "camel")
- snakeDir := filepath.Join(dir, "snake")
- defer func() {
- _ = os.RemoveAll(dir)
- }()
- g := NewDefaultGenerator(source, camelDir, NamingCamel)
- err := g.Start(true)
- assert.Nil(t, err)
- assert.True(t, func() bool {
- _, err := os.Stat(filepath.Join(camelDir, "TestUserInfoModel.go"))
- return err == nil
- }())
- g = NewDefaultGenerator(source, snakeDir, NamingSnake)
- err = g.Start(true)
- assert.Nil(t, err)
- assert.True(t, func() bool {
- _, err := os.Stat(filepath.Join(snakeDir, "test_user_info_model.go"))
- return err == nil
- }())
- }
|