From c9c9fcb518d24083c23cc93c5f692c425ae272b8 Mon Sep 17 00:00:00 2001 From: dmccoystephenson Date: Wed, 31 Aug 2022 02:36:14 +0000 Subject: [PATCH] Tested and fixed entity removal. --- src/grid.cpp | 1 + src/location.cpp | 12 ++++++-- src/tests.cpp | 73 +++++++++++++++++++++++++++++++++++++---------- tests | Bin 88032 -> 99656 bytes 4 files changed, 68 insertions(+), 18 deletions(-) diff --git a/src/grid.cpp b/src/grid.cpp index 8bb4923..ce77d55 100644 --- a/src/grid.cpp +++ b/src/grid.cpp @@ -86,6 +86,7 @@ namespace envlibcpp { location.removeEntity(entity); } } + entity.setGridId(-1); } bool Grid::isEntityPresent(Entity &entity) { diff --git a/src/location.cpp b/src/location.cpp index 25bfae3..7e0f779 100644 --- a/src/location.cpp +++ b/src/location.cpp @@ -31,11 +31,17 @@ namespace envlibcpp { } void Location::removeEntity(Entity &entity) { - for (auto i = entities.begin(); i != entities.end(); i++) { - if (i->getId() == entity.getId()) { - entities.erase(i); + int index = -1; + for (int i = 0; i < getNumEntities(); i++) { + if (entities[i].getId() == entity.getId()) { + index = i; + break; } } + if (index != -1) { + entities.erase(entities.begin() + index); + } + entity.setLocationId(-1); } bool Location::isEntityPresent(Entity &entity) { diff --git a/src/tests.cpp b/src/tests.cpp index f25a266..64ffe4d 100644 --- a/src/tests.cpp +++ b/src/tests.cpp @@ -11,27 +11,37 @@ using namespace envlibcpp; void testTemplate() { std::cout << "---" << std::endl; - std::cout << "Test - Template" << std::endl; - + std::cout << "Test 0 - Template" << std::endl; assert(true); std::cout << "Success" << std::endl; } void testPlacingEntityInLocation() { std::cout << "---" << std::endl; - std::cout << "Test - Placing entity in location" << std::endl; + std::cout << "Test 1 - Placing entity in location" << std::endl; Entity entity("Daniel"); Location location(0, 0); - location.addEntity(entity); - assert(location.isEntityPresent(entity) == true); + assert(entity.getLocationId() == location.getId()); + std::cout << "Success" << std::endl; +} + +void testRemovingEntityFromLocation() { + std::cout << "---" << std::endl; + std::cout << "Test 2 - Removing entity from location" << std::endl; + Entity entity("Daniel"); + Location location(0, 0); + location.addEntity(entity); + location.removeEntity(entity); + assert(!location.isEntityPresent(entity)); + assert(entity.getLocationId() == -1); std::cout << "Success" << std::endl; } void testGeneratingGrid() { std::cout << "---" << std::endl; - std::cout << "Test - Generating grid" << std::endl; + std::cout << "Test 3 - Generating grid" << std::endl; int size = 4; Environment environment("test environment", 4); int numLocations = environment.getGrid().getLocations().size(); @@ -42,7 +52,7 @@ void testGeneratingGrid() { void testRetrievingLocation() { std::cout << "---" << std::endl; - std::cout << "Test - Retrieving location" << std::endl; + std::cout << "Test 4 - Retrieving location" << std::endl; Grid grid(5); Location firstLocation = grid.getFirstLocation(); assert(firstLocation.getX() == 0 && firstLocation.getY() == 0); @@ -51,10 +61,11 @@ void testRetrievingLocation() { void testRetrievingLocationAfterModification() { std::cout << "---" << std::endl; - std::cout << "Test - Retrieving location after modification" << std::endl; + std::cout << "Test 5 - Retrieving location after modification" << std::endl; Grid grid(5); Location firstLocation = grid.getFirstLocation(); Entity entity = Entity("test"); + firstLocation = grid.getFirstLocation(); firstLocation.addEntity(entity); assert(firstLocation.getX() == 0 && firstLocation.getY() == 0); assert(firstLocation.isEntityPresent(entity)); @@ -63,35 +74,67 @@ void testRetrievingLocationAfterModification() { void testPlacingEntityInGrid() { std::cout << "---" << std::endl; - std::cout << "Test - Placing entity in grid" << std::endl; + std::cout << "Test 6 - Placing entity in grid" << std::endl; Entity entity("Daniel"); Grid grid(4); - grid.addEntity(entity); - assert(grid.isEntityPresent(entity)); + assert(entity.getGridId() == grid.getId()); + std::cout << "Success" << std::endl; +} + +void testRemovingEntityFromGrid() { + std::cout << "---" << std::endl; + std::cout << "Test 7 - Removing entity from grid" << std::endl; + Entity entity("Daniel"); + Grid grid(4); + grid.addEntity(entity); + grid.removeEntity(entity); + assert(!grid.isEntityPresent(entity)); + assert(entity.getGridId() == -1); std::cout << "Success" << std::endl; } void testPlacingEntityInEnvironment() { std::cout << "---" << std::endl; - std::cout << "Test - Placing entity in environment" << std::endl; + std::cout << "Test 8 - Placing entity in environment" << std::endl; Entity entity("Daniel"); Environment environment("Earth", 2); - environment.addEntity(entity); + assert(environment.isEntityPresent(entity)); + assert(entity.getEnvironmentId() == environment.getId()); + std::cout << "Success" << std::endl; +} - assert(environment.isEntityPresent(entity) == true); +void testRemovingEntityFromEnvironment() { + std::cout << "---" << std::endl; + std::cout << "Test 9 - Removing entity from environment" << std::endl; + Entity entity("Daniel"); + Environment environment("Earth", 2); + environment.addEntity(entity); + environment.removeEntity(entity); + assert(!environment.isEntityPresent(entity)); + assert(entity.getEnvironmentId() == -1); std::cout << "Success" << std::endl; } -int main() { +void seedRandomNumberGenerator() { srand (time (NULL)); +} + +int main() { + // seed RNG + seedRandomNumberGenerator(); + + // tests testPlacingEntityInLocation(); + testRemovingEntityFromLocation(); testGeneratingGrid(); testRetrievingLocation(); testRetrievingLocationAfterModification(); testPlacingEntityInGrid(); + testRemovingEntityFromGrid(); testPlacingEntityInEnvironment(); + testRemovingEntityFromEnvironment(); return 0; } \ No newline at end of file diff --git a/tests b/tests index 4d6e6e51c55cb86969eb8688d4803ef58b5a76f5..75c0684ca48adf9929b7e4ad34a1e8b7d8a583a9 100644 GIT binary patch literal 99656 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 delta 25414 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 YEi~dXtv^z^YM3~qB30{-S5?#h0lZixCIA2c