MCPcopy Create free account
hub / github.com/bytebase/bytebase / TestBackup

Function TestBackup

backend/plugin/parser/pg/backup_test.go:22–75  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

20}
21
22func TestBackup(t *testing.T) {
23 tests := []rollbackCase{}
24
25 const (
26 record = false
27 )
28 var (
29 filepath = "test-data/test_backup.yaml"
30 )
31
32 a := require.New(t)
33 yamlFile, err := os.Open(filepath)
34 a.NoError(err)
35
36 byteValue, err := io.ReadAll(yamlFile)
37 a.NoError(yamlFile.Close())
38 a.NoError(err)
39 a.NoError(yaml.Unmarshal(byteValue, &tests))
40
41 for i, t := range tests {
42 result, err := TransformDMLToSelect(context.Background(), base.TransformContext{
43 GetDatabaseMetadataFunc: fixedMockDatabaseMetadataGetter,
44 DatabaseName: "",
45 }, t.Input, "", "backupSchema", "rollback")
46 a.NoError(err)
47 slices.SortFunc(result, func(i, j base.BackupStatement) int {
48 if i.TargetTableName == j.TargetTableName {
49 if i.Statement < j.Statement {
50 return -1
51 }
52 if i.Statement > j.Statement {
53 return 1
54 }
55 return 0
56 }
57 if i.TargetTableName < j.TargetTableName {
58 return -1
59 }
60 if i.TargetTableName > j.TargetTableName {
61 return 1
62 }
63 return 0
64 })
65
66 if record {
67 tests[i].Result = result
68 } else {
69 a.Equal(t.Result, result, t.Input)
70 }
71 }
72 if record {
73 yamltest.Record(t, filepath, tests)
74 }
75}

Callers

nothing calls this directly

Calls 6

RecordFunction · 0.92
UnmarshalMethod · 0.80
TransformDMLToSelectFunction · 0.70
OpenMethod · 0.65
CloseMethod · 0.65
EqualMethod · 0.65

Tested by

no test coverage detected