v1_test.go 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. package v1
  2. import (
  3. "git.sxidc.com/service-supports/dps-sdk/ports"
  4. "math/rand"
  5. "testing"
  6. "time"
  7. )
  8. var tableModelDescribe = ports.TableModelDescribe{
  9. Fields: []ports.TableModelField{
  10. {"ID", "gorm:\"primary_key;type:varchar(32);comment:id;\""},
  11. {"Name", "gorm:\"not null;type:varchar(128);comment:数据库名称;\""},
  12. {"Time", "gorm:\"not null;type:timestamp with time zone;comment:数据库时间;\""},
  13. {"TableNum", "gorm:\"not null;type:integer;comment:数据库表数量;\""},
  14. },
  15. }
  16. func TestAutoMigrate(t *testing.T) {
  17. initClient(t, "localhost:30170")
  18. defer destroyClient(t)
  19. newToolKit(t).autoMigrate(&ports.AutoMigrateRequest{
  20. DatabaseID: "2b78141779ee432295ca371b91c5cac7",
  21. TablePrefixWithSchema: "test." + simpleUUID()[0:8],
  22. Version: "v1",
  23. TableModelDescribe: tableModelDescribe,
  24. })
  25. }
  26. func TestInsert(t *testing.T) {
  27. initClient(t, "localhost:30170")
  28. defer destroyClient(t)
  29. tablePrefix := "test." + simpleUUID()[0:8]
  30. id := simpleUUID()
  31. name := simpleUUID()
  32. now := time.Now().Local()
  33. tableNum := rand.New(rand.NewSource(now.Unix())).Intn(10)
  34. newToolKit(t).autoMigrate(&ports.AutoMigrateRequest{
  35. DatabaseID: "2b78141779ee432295ca371b91c5cac7",
  36. TablePrefixWithSchema: tablePrefix,
  37. Version: "v1",
  38. TableModelDescribe: tableModelDescribe,
  39. }).insert(&ports.InsertRequest{
  40. DatabaseID: "2b78141779ee432295ca371b91c5cac7",
  41. TablePrefixWithSchema: tablePrefix,
  42. Version: "v1",
  43. KeyColumns: []string{"id"},
  44. TableRow: map[string]any{
  45. "id": id,
  46. "name": name,
  47. "time": now,
  48. "table_num": tableNum,
  49. },
  50. UserID: "test",
  51. })
  52. }