diff --git a/Assignment_2/lib/FineList.cpp b/Assignment_2/lib/FineList.cpp index 3450611..73ab51e 100644 --- a/Assignment_2/lib/FineList.cpp +++ b/Assignment_2/lib/FineList.cpp @@ -15,12 +15,10 @@ FineSet::FineSet() : Set("FineSet") { } bool FineSet::add(int element) { first->lock(); - return true; Node* p = this->first; Node* c = p->next; c->lock(); while (c->is_smaller_than(element)) { - std::cout << "C: "<< c->next << std::endl; p->unlock(); p = c; c = c->next; @@ -42,7 +40,7 @@ bool FineSet::add(int element) { } } -bool FineSet::rmv(int element) { +bool FineSet::rmv(int element) { this->first->lock(); Node* p = this->first; Node* c = p->next; diff --git a/Assignment_2/test/FineSet_test.cpp b/Assignment_2/test/FineSet_test.cpp index e028c93..9a677cd 100644 --- a/Assignment_2/test/FineSet_test.cpp +++ b/Assignment_2/test/FineSet_test.cpp @@ -10,6 +10,42 @@ TEST(FineSetTest, add1_add1) { ASSERT_FALSE(fl->add(1)); } +TEST(FineSetTest, add1_rmv1) { FineSet * fl = new FineSet(); - //ASSERT_TRUE(fl->add(1)); + ASSERT_TRUE(fl->add(1)); + ASSERT_TRUE(fl->rmv(1)); +} + +TEST(FineSetTest, rmv1) { + FineSet * fl = new FineSet(); + ASSERT_FALSE(fl->rmv(1)); +} + +TEST(FineSetTest, rmv1_add1_rmv1_rmv1) { + FineSet * fl = new FineSet(); + ASSERT_FALSE(fl->rmv(1)); + ASSERT_TRUE(fl->add(1)); + ASSERT_TRUE(fl->rmv(1)); + ASSERT_FALSE(fl->rmv(1)); +} + +TEST(FineSetTest, ctn1) { + FineSet * fl = new FineSet(); + ASSERT_FALSE(fl->ctn(1)); +} + +TEST(FineSetTest, ctn1_add1_ctn1) { + FineSet * fl = new FineSet(); + ASSERT_FALSE(fl->ctn(1)); + ASSERT_TRUE(fl->add(1)); + ASSERT_TRUE(fl->ctn(1));; +} + +TEST(FineSetTest, ctn1_add1_ctn1_rmv1_ctn1) { + FineSet * fl = new FineSet(); + ASSERT_FALSE(fl->ctn(1)); + ASSERT_TRUE(fl->add(1)); + ASSERT_TRUE(fl->ctn(1)); + ASSERT_TRUE(fl->rmv(1)); + ASSERT_FALSE(fl->ctn(1)); }