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

Function TestBackup

backend/plugin/parser/mysql/backup_test.go:24–77  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

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

Callers

nothing calls this directly

Calls 7

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

Tested by

no test coverage detected