some test cases for cache, found some bugs, fixed
This commit is contained in:
parent
c23dae2a25
commit
ceb6df6eca
3 changed files with 55 additions and 4 deletions
|
@ -73,6 +73,16 @@ TEST_F(DataBaseTest, AddingQStringKey) {
|
|||
EXPECT_EQ(t2->getRecord("hello"), "world");
|
||||
}
|
||||
|
||||
TEST_F(DataBaseTest, AddingKeysToCache) {
|
||||
EXPECT_EQ(db->ready(), true);
|
||||
c1->addRecord(2, "blah balah");
|
||||
c1->addRecord(-4, "testing goes brrr");
|
||||
c1->addRecord(140, "whatever");
|
||||
c1->addRecord(-37, "aaaaa tss tsss tsss tsss aaaaaaa");
|
||||
EXPECT_EQ(c1->getRecord(140), "whatever");
|
||||
EXPECT_EQ(c1->getRecord(-116), "whatever");
|
||||
}
|
||||
|
||||
TEST_F(DataBaseTest, AddingRepeatingIntegerKey) {
|
||||
EXPECT_EQ(db->ready(), true);
|
||||
bool thrown = false;
|
||||
|
@ -97,6 +107,18 @@ TEST_F(DataBaseTest, AddingRepeatingStringKey) {
|
|||
EXPECT_EQ(t2->getRecord("sdfhga"), "DSFFDG");
|
||||
}
|
||||
|
||||
TEST_F(DataBaseTest, AddingRepeatingCacheKey) {
|
||||
EXPECT_EQ(db->ready(), true);
|
||||
bool thrown = false;
|
||||
try {
|
||||
c1->addRecord(-4, "world");
|
||||
} catch (const DataBase::Exist e) {
|
||||
thrown = true;
|
||||
}
|
||||
ASSERT_EQ(thrown, true) << "The expected behaviour is to throw exception on duplicate, but it didn't happened";
|
||||
EXPECT_EQ(c1->getRecord(-4), "testing goes brrr");
|
||||
}
|
||||
|
||||
TEST_F(DataBaseTest, GettingNotExistingKeys) {
|
||||
EXPECT_EQ(db->ready(), true);
|
||||
bool thrown = false;
|
||||
|
@ -114,6 +136,14 @@ TEST_F(DataBaseTest, GettingNotExistingKeys) {
|
|||
thrown = true;
|
||||
}
|
||||
ASSERT_EQ(thrown, true) << "The expected behaviour is to throw exception on duplicate, but it didn't happened";
|
||||
|
||||
thrown = false;
|
||||
try {
|
||||
std::string wrong = c1->getRecord(21);
|
||||
} catch (const DataBase::NotFound e) {
|
||||
thrown = true;
|
||||
}
|
||||
ASSERT_EQ(thrown, true) << "The expected behaviour is to throw exception on duplicate, but it didn't happened";
|
||||
}
|
||||
|
||||
TEST_F(DataBaseTest, Persistence) {
|
||||
|
@ -130,11 +160,18 @@ TEST_F(DataBaseTest, Persistence) {
|
|||
EXPECT_EQ(t1->getRecord(3), 15);
|
||||
EXPECT_EQ(t1->getRecord(1), 2);
|
||||
EXPECT_EQ(t1->getRecord(2), 2);
|
||||
|
||||
EXPECT_EQ(t2->getRecord("hello"), "world");
|
||||
EXPECT_EQ(t2->getRecord("aaa"), "gagdfsdf");
|
||||
EXPECT_EQ(t2->getRecord("sdfhga"), "DSFFDG");
|
||||
EXPECT_EQ(t2->getRecord("sdfsda"), "shgsdgfa");
|
||||
|
||||
EXPECT_EQ(c1->getRecord(-116), "whatever");
|
||||
EXPECT_EQ(c1->getRecord(-4), "testing goes brrr");
|
||||
EXPECT_EQ(c1->getRecord(-4), "testing goes brrr");
|
||||
EXPECT_EQ(c1->getRecord(-37), "aaaaa tss tsss tsss tsss aaaaaaa");
|
||||
EXPECT_EQ(c1->getRecord(2), "blah balah");
|
||||
|
||||
bool thrown = false;
|
||||
try {
|
||||
QString wrong = t2->getRecord("cats");
|
||||
|
@ -150,22 +187,35 @@ TEST_F(DataBaseTest, Persistence) {
|
|||
thrown = true;
|
||||
}
|
||||
ASSERT_EQ(thrown, true) << "The expected behaviour is to throw exception on duplicate, but it didn't happened";
|
||||
|
||||
thrown = false;
|
||||
try {
|
||||
std::string wrong = c1->getRecord(89);
|
||||
} catch (const DataBase::NotFound e) {
|
||||
thrown = true;
|
||||
}
|
||||
ASSERT_EQ(thrown, true) << "The expected behaviour is to throw exception on duplicate, but it didn't happened";
|
||||
}
|
||||
|
||||
TEST_F(DataBaseTest, CountAndDrop) {
|
||||
EXPECT_EQ(db->ready(), true);
|
||||
EXPECT_EQ(t1->count(), 3);
|
||||
EXPECT_EQ(t2->count(), 4);
|
||||
EXPECT_EQ(c1->count(), 4);
|
||||
|
||||
db->drop();
|
||||
|
||||
EXPECT_EQ(t1->count(), 0);
|
||||
EXPECT_EQ(t2->count(), 0);
|
||||
EXPECT_EQ(c1->count(), 0);
|
||||
|
||||
t1->addRecord(2, 2);
|
||||
t2->addRecord("sdfhga", "world");
|
||||
c1->addRecord(15, "world");
|
||||
c1->addRecord(12, "grr grr");
|
||||
|
||||
EXPECT_EQ(t1->count(), 1);
|
||||
EXPECT_EQ(t2->count(), 1);
|
||||
EXPECT_EQ(c1->count(), 2);
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue