Extended test for zones

This commit is contained in:
Elias Csomor 2022-10-31 10:43:13 +01:00
parent bfbda8d753
commit ee96ffbc52
1 changed files with 48 additions and 8 deletions

View File

@ -26,11 +26,13 @@ public class JsonPlantDatabaseTest {
@Test
@DisplayName("Check if results are retrieved completely")
void getPlantList() {
void getPlantListNotEmpty() {
List<Plant> testList;
try {
testList = testDatabase.getPlantList(HardinessZone.ZONE_8A);
} catch (IOException | HardinessZoneNotSetException e) {
} catch (IOException e) {
throw new RuntimeException(e);
} catch (HardinessZoneNotSetException e) {
throw new RuntimeException(e);
}
Assertions.assertEquals(3, testList.size());
@ -40,13 +42,50 @@ public class JsonPlantDatabaseTest {
Assertions.assertEquals(expected,names);
}
@Test
@DisplayName("Check if results are retrieved correctly when empty")
void getPlantListEmpty() {
List<Plant> testList;
try {
testList = testDatabase.getPlantList(HardinessZone.ZONE_1A);
} catch (IOException e) {
throw new RuntimeException(e);
} catch (HardinessZoneNotSetException e) {
throw new RuntimeException(e);
}
Assertions.assertEquals(0, testList.size());
}
@Test
@DisplayName("Check whether single access works.")
void getPlantById() {
void getPlantByIdAndZone() {
Optional<Plant> testPlant;
try {
testPlant = testDatabase.getPlantById(HardinessZone.ZONE_8A,1);
} catch (IOException | HardinessZoneNotSetException e) {
testPlant = testDatabase.getPlantById(HardinessZone.ZONE_8A, 1);
} catch (IOException e) {
throw new RuntimeException(e);
} catch (HardinessZoneNotSetException e) {
throw new RuntimeException(e);
}
Assertions.assertTrue(testPlant.isPresent());
Assertions.assertEquals("Early Carrot", testPlant.get().name());
}
@Test
@DisplayName("Check whether single access respects zone correctly.")
void getPlantByIdAndWrongZone() {
Optional<Plant> testPlant;
try {
testPlant = testDatabase.getPlantById(HardinessZone.ZONE_1A, 1);
Assertions.assertFalse(testPlant.isPresent());
testPlant = testDatabase.getPlantById(HardinessZone.ZONE_8A, 1);
Assertions.assertTrue(testPlant.isPresent());
} catch (IOException e) {
throw new RuntimeException(e);
} catch (HardinessZoneNotSetException e) {
throw new RuntimeException(e);
}
Assertions.assertTrue(testPlant.isPresent());
@ -58,8 +97,10 @@ public class JsonPlantDatabaseTest {
void getPlantByIdMustFail() {
Optional<Plant> testPlant;
try {
testPlant = testDatabase.getPlantById(HardinessZone.ZONE_8A,99);
} catch (IOException | HardinessZoneNotSetException e) {
testPlant = testDatabase.getPlantById(HardinessZone.ZONE_8A, 99);
} catch (IOException e) {
throw new RuntimeException(e);
} catch (HardinessZoneNotSetException e) {
throw new RuntimeException(e);
}
Assertions.assertFalse(testPlant.isPresent());
@ -68,4 +109,3 @@ public class JsonPlantDatabaseTest {
}
}