diff --git a/app/src/main/java/com/example/simpleparadox/listycity/CityList.java b/app/src/main/java/com/example/simpleparadox/listycity/CityList.java index 6da242f3..e117250c 100644 --- a/app/src/main/java/com/example/simpleparadox/listycity/CityList.java +++ b/app/src/main/java/com/example/simpleparadox/listycity/CityList.java @@ -9,6 +9,19 @@ */ public class CityList { private List cities = new ArrayList<>(); + + /** + * This adds a city to the list if the city does not exist + * @param city + * This is a candidate city to add + */ + public void addOne(City city) { + if (hasCity(city)) { + throw new IllegalArgumentException(); + } + cities.add(city); + } + /** * This adds a city to the list if the city does not exist diff --git a/app/src/test/java/com/example/simpleparadox/listycity/CityListTest.java b/app/src/test/java/com/example/simpleparadox/listycity/CityListTest.java index 787eab7e..b5cddb94 100644 --- a/app/src/test/java/com/example/simpleparadox/listycity/CityListTest.java +++ b/app/src/test/java/com/example/simpleparadox/listycity/CityListTest.java @@ -93,4 +93,11 @@ void testCountCities() { assertEquals(1, cityList.countCities()); } -} \ No newline at end of file + + @Test + void testTwoCities(){ + CityList cityList = mockCityList(); + cityList.addOne(new City("Regina", "Saskatchewan")); + assertEquals(2,cityList.countCities()); + } +}