From 51975209db6df1f7f62aba8124689c4cb72cf2fc Mon Sep 17 00:00:00 2001 From: articstranger Date: Sat, 13 Apr 2019 21:08:32 +0800 Subject: [PATCH] MapCommandTest fully implemented + miscellaneous changes --- articstranger.png} | 0 docs/diagrams/MapSequenceDiagram.pptx | Bin 0 -> 43985 bytes docs/images/MapSequenceDiagram.png | Bin 0 -> 27157 bytes docs/images/Volunteerclasswithpoints.jpg | Bin 0 -> 41831 bytes ndhuu.png} | 0 quinnzzzzz.png} | 0 .../seedu/address/commons/core/Messages.java | 1 - .../address/logic/commands/MapCommand.java | 3 +- .../logic/commands/MapCommandTest.java | 61 ++++++++++++++++++ .../AddBeneficiaryCommandTest.java | 7 ++ .../address/testutil/TypicalVolunteers.java | 34 ++++++++-- swalahlah.png} | 0 12 files changed, 96 insertions(+), 10 deletions(-) create mode 100644 articstranger.png} create mode 100644 docs/diagrams/MapSequenceDiagram.pptx create mode 100644 docs/images/MapSequenceDiagram.png create mode 100644 docs/images/Volunteerclasswithpoints.jpg create mode 100644 ndhuu.png} create mode 100644 quinnzzzzz.png} create mode 100644 swalahlah.png} diff --git a/articstranger.png} b/articstranger.png} new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/docs/diagrams/MapSequenceDiagram.pptx b/docs/diagrams/MapSequenceDiagram.pptx new file mode 100644 index 0000000000000000000000000000000000000000..ef01d683a7a0ce11b858323673289443c0e92f8e GIT binary patch literal 43985 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 literal 0 HcmV?d00001 diff --git a/docs/images/MapSequenceDiagram.png b/docs/images/MapSequenceDiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..79964b26eaf0d42a9ec1f499257067587d8c1423 GIT binary patch literal 27157 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 xfF8}rqa`Li?}-^Lb4JS?`j7TjS6cNr`YB)A5* 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

MXMm1*F&@kt3 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 literal 0 HcmV?d00001 diff --git a/ndhuu.png} b/ndhuu.png} new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/quinnzzzzz.png} b/quinnzzzzz.png} new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/src/main/java/seedu/address/commons/core/Messages.java b/src/main/java/seedu/address/commons/core/Messages.java index 00f2335ed0b9..077b444999e7 100644 --- a/src/main/java/seedu/address/commons/core/Messages.java +++ b/src/main/java/seedu/address/commons/core/Messages.java @@ -19,6 +19,5 @@ public class Messages { public static final String MESSAGE_INVALID_VOLUNTEER_DISPLAYED_INDEX = "The volunteer index provided is invalid"; public static final String MESSAGE_NOT_ENOUGH_VOLUNTEERS = "The volunteer pool does not have enough volunteers!"; public static final String MESSAGE_VOLUNTEERS_LISTED_OVERVIEW = "%1$d volunteers listed!"; - public static final String MESSAGE_MAP_SUCCESS = "Mapping success!"; public static final String MESSAGE_INVALID_AGE_FORMAT = "Invalid year input!"; } diff --git a/src/main/java/seedu/address/logic/commands/MapCommand.java b/src/main/java/seedu/address/logic/commands/MapCommand.java index 9346d0dd7f79..9c09023041b7 100644 --- a/src/main/java/seedu/address/logic/commands/MapCommand.java +++ b/src/main/java/seedu/address/logic/commands/MapCommand.java @@ -3,7 +3,6 @@ import static java.util.Objects.requireNonNull; -import seedu.address.commons.core.Messages; import seedu.address.logic.CommandHistory; import seedu.address.model.MapObject; import seedu.address.model.Model; @@ -39,7 +38,7 @@ public CommandResult execute(Model model, CommandHistory history) { requireNonNull(model); model.mapAllVolunteer(map); return new CommandResult( - String.format(Messages.MESSAGE_MAP_SUCCESS)); + String.format(MESSAGE_SUCCESS)); } } diff --git a/src/test/java/seedu/address/logic/commands/MapCommandTest.java b/src/test/java/seedu/address/logic/commands/MapCommandTest.java index e5ef89c738d0..0a3b70716682 100644 --- a/src/test/java/seedu/address/logic/commands/MapCommandTest.java +++ b/src/test/java/seedu/address/logic/commands/MapCommandTest.java @@ -1,4 +1,65 @@ package seedu.address.logic.commands; +import static seedu.address.testutil.TypicalVolunteers.getTypicalAddressBook; +import static seedu.address.testutil.TypicalVolunteers.getTypicalVolunteersPoints; + +import org.junit.Test; +import static org.junit.Assert.assertEquals; + +import java.util.ArrayList; +import javafx.util.Pair; +import seedu.address.logic.CommandHistory; +import seedu.address.model.MapObject; +import seedu.address.model.Model; +import seedu.address.model.ModelManager; +import seedu.address.model.UserPrefs; + public class MapCommandTest { + + private CommandHistory commandHistory = new CommandHistory(); + + @Test + public void test_emptyAddressBook_success() { + Model model = new ModelManager(); + Model expectedModel = new ModelManager(); + CommandResult result = new MapCommand(defaultMap()).execute(model, commandHistory); + assertEquals(model, expectedModel); + } + + @Test + public void test_nonEmptyAddressBook_success() { + Model model = new ModelManager(getTypicalAddressBook(), new UserPrefs()); + new MapCommand(defaultMap()).execute(model, commandHistory); + ArrayList expectedPoints = getTypicalVolunteersPoints(); + assertEquals(collectPoints(model), expectedPoints); + } + + /** + * + * Goes through the @param model and collects points from all volunteers + * @return points as an arraylist + */ + public ArrayList collectPoints(Model model) { + ArrayList points = new ArrayList<>(); + model.getFilteredVolunteerList().forEach(vol -> { + points.add(vol.getPoints()); + }); + return points; + } + + /** + * default mapobject stub + * @return + */ + private MapObject defaultMap(){ + Pair agePair = new Pair<>(2, 18); + Pair racePair = new Pair<>(1, "Chinese"); + Pair medicalPair = new Pair<>(3, "Nil"); + String comparator = ">"; + + return new MapObject(agePair, comparator, racePair, medicalPair); + } + + + } diff --git a/src/test/java/seedu/address/logic/commands/beneficiary/AddBeneficiaryCommandTest.java b/src/test/java/seedu/address/logic/commands/beneficiary/AddBeneficiaryCommandTest.java index ab28b15552de..704887341693 100644 --- a/src/test/java/seedu/address/logic/commands/beneficiary/AddBeneficiaryCommandTest.java +++ b/src/test/java/seedu/address/logic/commands/beneficiary/AddBeneficiaryCommandTest.java @@ -8,6 +8,7 @@ import java.nio.file.Path; import java.util.ArrayList; import java.util.Arrays; +import java.util.List; import java.util.function.Predicate; import org.junit.Rule; @@ -403,6 +404,12 @@ public void mapAllVolunteer(MapObject map) { public void sortVolunteers() { } + + @Override + public List addData(int numVolunteers, ArrayList prefixToBePrinted) { + throw new AssertionError("This method " + + "should not be called."); + } } /** diff --git a/src/test/java/seedu/address/testutil/TypicalVolunteers.java b/src/test/java/seedu/address/testutil/TypicalVolunteers.java index 59549f1c72f5..9dbb6f84d56d 100644 --- a/src/test/java/seedu/address/testutil/TypicalVolunteers.java +++ b/src/test/java/seedu/address/testutil/TypicalVolunteers.java @@ -25,22 +25,27 @@ public class TypicalVolunteers { public static final Volunteer ALICE = new VolunteerBuilder().withName("Alice Pauline") .withAddress("123, Jurong West Ave 6, #08-111").withEmail("alice@example.com") - .withPhone("94351253") + .withPhone("94351253").withAge("19").withRace("Chinese").withMedicalCondition("nil") .withTags("friends").build(); public static final Volunteer BENSON = new VolunteerBuilder().withName("Benson Meier") - .withAddress("311, Clementi Ave 2, #02-25") + .withAddress("311, Clementi Ave 2, #02-25").withAge("17").withRace("Chinese").withMedicalCondition("injured") .withEmail("johnd@example.com").withPhone("98765432") .withTags("owesMoney", "friends").build(); public static final Volunteer CARL = new VolunteerBuilder().withName("Carl Kurz").withPhone("95352563") - .withEmail("heinz@example.com").withAddress("wall street").build(); + .withEmail("heinz@example.com").withAddress("wall street") + .withAge("19").withRace("French").withMedicalCondition("nil").build(); public static final Volunteer DANIEL = new VolunteerBuilder().withName("Daniel Meier").withPhone("87652533") - .withEmail("cornelia@example.com").withAddress("10th street").withTags("friends").build(); + .withEmail("cornelia@example.com").withAddress("10th street").withTags("friends") + .withAge("19").withRace("Chinese").withMedicalCondition("nil").build(); public static final Volunteer ELLE = new VolunteerBuilder().withName("Elle Meyer").withPhone("9482224") - .withEmail("werner@example.com").withAddress("michegan ave").build(); + .withEmail("werner@example.com").withAddress("michegan ave") + .withAge("29").withRace("Indian").withMedicalCondition("vegetable").build(); public static final Volunteer FIONA = new VolunteerBuilder().withName("Fiona Kunz").withPhone("9482427") - .withEmail("lydia@example.com").withAddress("little tokyo").build(); + .withEmail("lydia@example.com").withAddress("little tokyo") + .withAge("13").withRace("English").withMedicalCondition("nil").build(); public static final Volunteer GEORGE = new VolunteerBuilder().withName("George Best").withPhone("9482442") - .withEmail("anna@example.com").withAddress("4th street").build(); + .withEmail("anna@example.com").withAddress("4th street") + .withAge("15").withRace("Chinese").withMedicalCondition("dead").build(); // Manually added public static final Volunteer HOON = new VolunteerBuilder().withName("Hoon Meier").withPhone("8482424") @@ -74,4 +79,19 @@ public static AddressBook getTypicalAddressBook() { public static List getTypicalVolunteers() { return new ArrayList<>(Arrays.asList(ALICE, BENSON, CARL, DANIEL, ELLE, FIONA, GEORGE)); } + + + + public static ArrayList getTypicalVolunteersPoints() { + ArrayList points = new ArrayList<>(); + points.add(6); + points.add(1); + points.add(5); + points.add(6); + points.add(2); + points.add(3); + points.add(1); + return points; + } + } diff --git a/swalahlah.png} b/swalahlah.png} new file mode 100644 index 000000000000..e69de29bb2d1