diff options
Diffstat (limited to 'domain/tests/turn_order.cpp')
| -rw-r--r-- | domain/tests/turn_order.cpp | 88 |
1 files changed, 44 insertions, 44 deletions
diff --git a/domain/tests/turn_order.cpp b/domain/tests/turn_order.cpp index f1f2653..9feb47a 100644 --- a/domain/tests/turn_order.cpp +++ b/domain/tests/turn_order.cpp @@ -13,79 +13,79 @@ namespace turns::domain::tests TEST_CASE("A freshly constructed turn order") { - auto instance = turn_order{}; + auto instance = turn_order::create(); SECTION("can be created") { - REQUIRE(turn_order::create()); + REQUIRE(instance); } SECTION("has 0 items") { - REQUIRE(instance.get_n_items() == 0); + REQUIRE(instance->n_participants() == 0); } SECTION("accepts a new participant in form of a refptr") { - instance.append(participant::create("Honey Bunches of Oats", 12, disposition::friendly)); - REQUIRE(instance.get_n_items() == 1); + instance->append(participant::create("Honey Bunches of Oats", 12, disposition::friendly)); + REQUIRE(instance->n_participants() == 1); } SECTION("accepts a new participant in form of components") { - instance.append("River along the Field", 14, disposition::friendly); - REQUIRE(instance.get_n_items() == 1); + instance->append("River along the Field", 14, disposition::friendly); + REQUIRE(instance->n_participants() == 1); } SECTION("does nothing when trying to remove an item by refptr if no items were added beforehand") { - instance.remove(participant::create("Patch in the Forest", 3, disposition::friendly)); - REQUIRE(instance.get_n_items() == 0); + instance->remove(participant::create("Patch in the Forest", 3, disposition::friendly)); + REQUIRE(instance->n_participants() == 0); } SECTION("does nothing when trying to remove an item by index if no items were added beforehand") { - instance.remove(5); - REQUIRE(instance.get_n_items() == 0); + instance->remove(5); + REQUIRE(instance->n_participants() == 0); } SECTION("allows the removal of an item by refptr if the same item was added beforehand") { auto item = participant::create("Blank Canvas", 23, disposition::friendly); - instance.append(item); - instance.remove(item); - REQUIRE(instance.get_n_items() == 0); + instance->append(item); + instance->remove(item); + REQUIRE(instance->n_participants() == 0); } SECTION("does nothing when trying to remove an item by refptr that was not added beforehand") { auto item = participant::create("Blank Canvas", 23, disposition::friendly); - instance.append(item); - instance.remove(participant::create("Spell of Rain", 6, disposition::friendly)); - REQUIRE(instance.get_n_items() == 1); + instance->append(item); + instance->remove(participant::create("Spell of Rain", 6, disposition::friendly)); + REQUIRE(instance->n_participants() == 1); } SECTION("automatically sorts appended refptrs in descending order of priority") { SECTION("when appending the higher one last") { - instance.append(participant::create("Snow on the Field", 2, disposition::friendly)); - instance.append(participant::create("Bees behind the Cottage", 8, disposition::friendly)); - REQUIRE(instance.get_item(0)->get_name() == "Bees behind the Cottage"); + instance->append(participant::create("Snow on the Field", 2, disposition::friendly)); + instance->append(participant::create("Bees behind the Cottage", 8, disposition::friendly)); + REQUIRE(instance->get_participant(0)->get_name() == "Bees behind the Cottage"); } SECTION("when appending the higher one first") { - instance.append(participant::create("Bees behind the Cottage", 8, disposition::friendly)); - instance.append(participant::create("Snow on the Field", 2, disposition::friendly)); - REQUIRE(instance.get_item(0)->get_name() == "Bees behind the Cottage"); + instance->append(participant::create("Bees behind the Cottage", 8, disposition::friendly)); + instance->append(participant::create("Snow on the Field", 2, disposition::friendly)); + REQUIRE(instance->get_participant(0)->get_name() == "Bees behind the Cottage"); } SECTION("keeping the insertion order when appending items with equal priority") { - instance.append(participant::create("Snow on the Field", 8, disposition::friendly)); - instance.append(participant::create("Bees behind the Cottage", 8, disposition::friendly)); - REQUIRE(instance.get_item(0)->get_name() == "Snow on the Field"); + instance->append(participant::create("Snow on the Field", 8, disposition::friendly)); + instance->append(participant::create("Bees behind the Cottage", 8, disposition::friendly)); + REQUIRE(instance->get_participant(0)->get_name() == "Snow on the Field"); } } @@ -93,48 +93,48 @@ namespace turns::domain::tests { SECTION("when appending the higher one last") { - instance.append("Tree Blossom", 6, disposition::friendly); - instance.append("Fish in the River", 12, disposition::friendly); - REQUIRE(instance.get_item(0)->get_name() == "Fish in the River"); + instance->append("Tree Blossom", 6, disposition::friendly); + instance->append("Fish in the River", 12, disposition::friendly); + REQUIRE(instance->get_participant(0)->get_name() == "Fish in the River"); } SECTION("when appending the higher one first") { - instance.append("Fish in the River", 12, disposition::friendly); - instance.append("Tree Blossom", 6, disposition::friendly); - REQUIRE(instance.get_item(0)->get_name() == "Fish in the River"); + instance->append("Fish in the River", 12, disposition::friendly); + instance->append("Tree Blossom", 6, disposition::friendly); + REQUIRE(instance->get_participant(0)->get_name() == "Fish in the River"); } SECTION("keeping the insertion order when appending items with equal priority") { - instance.append("Fish in the River", 6, disposition::friendly); - instance.append("Tree Blossom", 6, disposition::friendly); - REQUIRE(instance.get_item(0)->get_name() == "Fish in the River"); + instance->append("Fish in the River", 6, disposition::friendly); + instance->append("Tree Blossom", 6, disposition::friendly); + REQUIRE(instance->get_participant(0)->get_name() == "Fish in the River"); } } SECTION("does not accept the same item twice by the same refptr") { auto item = participant::create("Angelic Berry", 9, disposition::friendly); - instance.append(item); - instance.append(item); - REQUIRE(instance.get_n_items() == 1); + instance->append(item); + instance->append(item); + REQUIRE(instance->n_participants() == 1); } SECTION("does not accept the same item twice by different refptrs") { auto item_one = participant::create("Misty Meadow", 14.2, disposition::friendly); auto item_two = participant::create("Misty Meadow", 14.2, disposition::friendly); - instance.append(item_one); - instance.append(item_two); - REQUIRE(instance.get_n_items() == 1); + instance->append(item_one); + instance->append(item_two); + REQUIRE(instance->n_participants() == 1); } SECTION("does not accept the same item twice by components") { - instance.append("Frozen Apple Tree", 2.1, disposition::friendly); - instance.append("Frozen Apple Tree", 2.1, disposition::friendly); - REQUIRE(instance.get_n_items() == 1); + instance->append("Frozen Apple Tree", 2.1, disposition::friendly); + instance->append("Frozen Apple Tree", 2.1, disposition::friendly); + REQUIRE(instance->n_participants() == 1); } } |
