39 sqlite3 *raw =
nullptr;
40 sqlite3_open(path_.c_str(), &raw);
42 "INSERT INTO blocked_ips (ip, comment) VALUES ('10.0.0.0/8', "
44 "INSERT INTO blocked_ips (ip, comment) VALUES ('1.2.3.4', "
46 nullptr,
nullptr,
nullptr);
50 auto entries = db_->GetBlacklist();
51 EXPECT_EQ(entries.size(), 2);
52 EXPECT_EQ(entries[0].ip,
"10.0.0.0/8");
53 EXPECT_EQ(entries[1].ip,
"1.2.3.4");
58 sqlite3 *raw =
nullptr;
59 sqlite3_open(path_.c_str(), &raw);
61 "INSERT INTO whitelist_ips (ip, comment) VALUES "
62 "('192.168.0.0/16', 'LAN');"
63 "INSERT INTO whitelist_ips (ip, comment) VALUES ('127.0.0.1', "
65 nullptr,
nullptr,
nullptr);
69 auto entries = db_->GetWhitelist();
70 EXPECT_EQ(entries.size(), 2);
71 EXPECT_EQ(entries[0].ip,
"192.168.0.0/16");
72 EXPECT_EQ(entries[1].ip,
"127.0.0.1");
77 sqlite3 *raw =
nullptr;
78 sqlite3_open(path_.c_str(), &raw);
80 "INSERT INTO whitelist_ips (ip) VALUES ('10.0.0.0/8');"
81 "INSERT INTO blocked_ips (ip) VALUES ('20.0.0.0/8');",
82 nullptr,
nullptr,
nullptr);
86 auto wl = db_->GetWhitelist();
87 auto bl = db_->GetBlacklist();
88 EXPECT_EQ(wl.size(), 1);
89 EXPECT_EQ(bl.size(), 1);
90 EXPECT_EQ(wl[0].ip,
"10.0.0.0/8");
91 EXPECT_EQ(bl[0].ip,
"20.0.0.0/8");
95 sqlite3 *raw =
nullptr;
96 sqlite3_open(path_.c_str(), &raw);
98 auto check_table = [&](
const char *name) {
99 char **results =
nullptr;
100 int rows = 0, cols = 0;
102 "SELECT name FROM sqlite_master WHERE type='table' AND name='" +
103 std::string(name) +
"'";
104 sqlite3_get_table(raw, sql.c_str(), &results, &rows, &cols,
nullptr);
105 bool found = (rows > 0);
106 sqlite3_free_table(results);
110 EXPECT_TRUE(check_table(
"whitelist_ips"));
111 EXPECT_TRUE(check_table(
"blocked_ips"));