add integration test for RENAME DATABASE
parent
7212bfce83
commit
d2afd881e6
|
@ -266,6 +266,81 @@ func TestServer_Query_DropDatabaseIsolated(t *testing.T) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestServer_Query_RenameDatabase(t *testing.T) {
|
||||||
|
t.Parallel()
|
||||||
|
s := OpenServer(NewConfig(), "")
|
||||||
|
defer s.Close()
|
||||||
|
|
||||||
|
if err := s.CreateDatabaseAndRetentionPolicy("db0", newRetentionPolicyInfo("rp0", 1, 0)); err != nil {
|
||||||
|
t.Fatal(err)
|
||||||
|
}
|
||||||
|
if err := s.MetaStore.SetDefaultRetentionPolicy("db0", "rp0"); err != nil {
|
||||||
|
t.Fatal(err)
|
||||||
|
}
|
||||||
|
|
||||||
|
writes := []string{
|
||||||
|
fmt.Sprintf(`cpu,host=serverA,region=uswest val=23.2 %d`, mustParseTime(time.RFC3339Nano, "2000-01-01T00:00:00Z").UnixNano()),
|
||||||
|
}
|
||||||
|
|
||||||
|
test := NewTest("db0", "rp0")
|
||||||
|
test.write = strings.Join(writes, "\n")
|
||||||
|
|
||||||
|
test.addQueries([]*Query{
|
||||||
|
&Query{
|
||||||
|
name: "Query data from db0 database",
|
||||||
|
command: `SELECT * FROM cpu`,
|
||||||
|
exp: `{"results":[{"series":[{"name":"cpu","columns":["time","host","region","val"],"values":[["2000-01-01T00:00:00Z","serverA","uswest",23.2]]}]}]}`,
|
||||||
|
params: url.Values{"db": []string{"db0"}},
|
||||||
|
},
|
||||||
|
&Query{
|
||||||
|
name: "Query data from db0 database with GROUP BY *",
|
||||||
|
command: `SELECT * FROM cpu GROUP BY *`,
|
||||||
|
exp: `{"results":[{"series":[{"name":"cpu","tags":{"host":"serverA","region":"uswest"},"columns":["time","val"],"values":[["2000-01-01T00:00:00Z",23.2]]}]}]}`,
|
||||||
|
params: url.Values{"db": []string{"db0"}},
|
||||||
|
},
|
||||||
|
&Query{
|
||||||
|
name: "Rename database",
|
||||||
|
command: `RENAME DATABASE db0 to db1`,
|
||||||
|
exp: `{"results":[{}]}`,
|
||||||
|
},
|
||||||
|
&Query{
|
||||||
|
name: "Query data from db0 database and ensure it's gone",
|
||||||
|
command: `SELECT * FROM cpu`,
|
||||||
|
exp: `{"results":[{"error":"database not found: db0"}]}`,
|
||||||
|
params: url.Values{"db": []string{"db0"}},
|
||||||
|
},
|
||||||
|
&Query{
|
||||||
|
name: "Query data from now renamed database db1 and ensure that's there",
|
||||||
|
command: `SELECT * FROM cpu`,
|
||||||
|
exp: `{"results":[{"series":[{"name":"cpu","columns":["time","host","region","val"],"values":[["2000-01-01T00:00:00Z","serverA","uswest",23.2]]}]}]}`,
|
||||||
|
params: url.Values{"db": []string{"db1"}},
|
||||||
|
},
|
||||||
|
&Query{
|
||||||
|
name: "Query data from now renamed database db1 and ensure it's still there with GROUP BY *",
|
||||||
|
command: `SELECT * FROM cpu GROUP BY *`,
|
||||||
|
exp: `{"results":[{"series":[{"name":"cpu","tags":{"host":"serverA","region":"uswest"},"columns":["time","val"],"values":[["2000-01-01T00:00:00Z",23.2]]}]}]}`,
|
||||||
|
params: url.Values{"db": []string{"db1"}},
|
||||||
|
},
|
||||||
|
}...)
|
||||||
|
|
||||||
|
for i, query := range test.queries {
|
||||||
|
if i == 0 {
|
||||||
|
if err := test.init(s); err != nil {
|
||||||
|
t.Fatalf("test init failed: %s", err)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if query.skip {
|
||||||
|
t.Logf("SKIP:: %s", query.name)
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
if err := query.Execute(s); err != nil {
|
||||||
|
t.Error(query.Error(err))
|
||||||
|
} else if !query.success() {
|
||||||
|
t.Error(query.failureMessage())
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func TestServer_Query_DropAndRecreateSeries(t *testing.T) {
|
func TestServer_Query_DropAndRecreateSeries(t *testing.T) {
|
||||||
t.Parallel()
|
t.Parallel()
|
||||||
s := OpenServer(NewConfig(), "")
|
s := OpenServer(NewConfig(), "")
|
||||||
|
|
Loading…
Reference in New Issue