Skip to content

Commit df995f7

Browse files
committed
Add executeStepException testcase
1 parent e8f956b commit df995f7

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

tests/Backup_test.cpp

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
#include <SQLiteCpp/Backup.h>
1313
#include <SQLiteCpp/Database.h>
1414
#include <SQLiteCpp/Statement.h>
15+
#include <SQLiteCpp/Exception.h>
1516

1617
#include <gtest/gtest.h>
1718

@@ -24,15 +25,39 @@ TEST(Backup, executeStep) {
2425
srcDB.exec("CREATE TABLE backup_test (id INTEGER PRIMARY KEY, value TEXT)");
2526
ASSERT_EQ(1, srcDB.exec("INSERT INTO backup_test VALUES (1, \"first\")"));
2627
ASSERT_EQ(1, srcDB.exec("INSERT INTO backup_test VALUES (2, \"second\")"));
28+
2729
SQLite::Database destDB("backup_test.db3.backup", SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE);
2830
SQLite::Backup backup(destDB, srcDB);
2931
const int res = backup.executeStep();
3032
ASSERT_EQ(res, SQLITE_DONE);
33+
3134
SQLite::Statement query(destDB, "SELECT * FROM backup_test ORDER BY id ASC");
3235
ASSERT_TRUE(query.executeStep());
3336
EXPECT_EQ(1, query.getColumn(0).getInt());
3437
EXPECT_STREQ("first", query.getColumn(1));
3538
ASSERT_TRUE(query.executeStep());
3639
EXPECT_EQ(2, query.getColumn(0).getInt());
3740
EXPECT_STREQ("second", query.getColumn(1));
41+
remove("backup_test.db3");
42+
remove("backup_test.db3.backup");
43+
}
44+
45+
TEST(Backup, executeStepException) {
46+
remove("backup_test.db3");
47+
remove("backup_test.db3.backup");
48+
SQLite::Database srcDB("backup_test.db3", SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE);
49+
srcDB.exec("CREATE TABLE backup_test (id INTEGER PRIMARY KEY, value TEXT)");
50+
ASSERT_EQ(1, srcDB.exec("INSERT INTO backup_test VALUES (1, \"first\")"));
51+
ASSERT_EQ(1, srcDB.exec("INSERT INTO backup_test VALUES (2, \"second\")"));
52+
{
53+
SQLite::Database destDB("backup_test.db3.backup", SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE);
54+
(void)destDB;
55+
}
56+
{
57+
SQLite::Database destDB("backup_test.db3.backup", SQLITE_OPEN_READONLY);
58+
SQLite::Backup backup(destDB, srcDB);
59+
EXPECT_THROW(backup.executeStep(), SQLite::Exception);
60+
}
61+
remove("backup_test.db3");
62+
remove("backup_test.db3.backup");
3863
}

0 commit comments

Comments
 (0)