1
0
Fork 0

Merge pull request #219 from rqlite/more_sql_load_tests

Test SQL loading with blank lines
master
Philip O'Toole 8 years ago committed by GitHub
commit 801965d23b

@ -318,6 +318,46 @@ COMMIT;
}
}
func Test_SingleNodeLoadBatchLargeBlank(t *testing.T) {
s := mustNewStore(true)
defer os.RemoveAll(s.Path())
if err := s.Open(true); err != nil {
t.Fatalf("failed to open single-node store: %s", err.Error())
}
defer s.Close(true)
s.WaitForLeader(10 * time.Second)
dump := `PRAGMA foreign_keys=OFF;
BEGIN TRANSACTION;
CREATE TABLE foo (id integer not null primary key, name text);
INSERT INTO "foo" VALUES(1,'fiona');
COMMIT;
`
buf := bytes.NewBufferString(dump)
n, err := s.Load(buf, 100)
if err != nil {
t.Fatalf("failed to load dump: %s", err.Error())
}
if n != 2 {
t.Fatal("wrong number of statements loaded")
}
// Check that data were loaded correctly.
r, err := s.Query([]string{`SELECT * FROM foo`}, false, true, Strong)
if err != nil {
t.Fatalf("failed to query single node: %s", err.Error())
}
if exp, got := `["id","name"]`, asJSON(r[0].Columns); exp != got {
t.Fatalf("unexpected results for query\nexp: %s\ngot: %s", exp, got)
}
if exp, got := `[[1,"fiona"]]`, asJSON(r[0].Values); exp != got {
t.Fatalf("unexpected results for query\nexp: %s\ngot: %s", exp, got)
}
}
func Test_SingleNodeLoadNoStatements(t *testing.T) {
s := mustNewStore(true)
defer os.RemoveAll(s.Path())

Loading…
Cancel
Save