Skip to content

Commit

Permalink
Merge pull request #60 from GERARDJM018/V1.2-List
Browse files Browse the repository at this point in the history
Update Test Case
  • Loading branch information
gosongying authored Mar 21, 2024
2 parents 9f36702 + b96ae38 commit 9dfb731
Showing 12 changed files with 86 additions and 81 deletions.
1 change: 0 additions & 1 deletion src/main/java/seedu/address/MainApp.java
Original file line number Diff line number Diff line change
@@ -6,7 +6,6 @@
import java.util.logging.Logger;

import javafx.application.Application;
import javafx.scene.image.Image;
import javafx.stage.Stage;
import seedu.address.commons.core.Config;
import seedu.address.commons.core.LogsCenter;
3 changes: 0 additions & 3 deletions src/main/java/seedu/address/logic/commands/ListCommand.java
Original file line number Diff line number Diff line change
@@ -1,13 +1,10 @@
package seedu.address.logic.commands;

import static java.util.Objects.requireNonNull;
import static seedu.address.model.Model.PREDICATE_SHOW_ALL_PERSONS;

import seedu.address.model.Model;
import seedu.address.model.person.TypePredicate;

import java.util.function.Predicate;

/**
* Lists all persons in the address book to the user.
*/
Original file line number Diff line number Diff line change
@@ -4,11 +4,13 @@
"phone": "94351253",
"email": "alice@example.com",
"address": "123, Jurong West Ave 6, #08-111",
"type" : "client",
"tags": [ "friends" ]
}, {
"name": "Alice Pauline",
"phone": "94351253",
"email": "pauline@example.com",
"address": "4th street"
"address": "4th street",
"type" : "client"
} ]
}
Original file line number Diff line number Diff line change
@@ -5,42 +5,49 @@
"phone" : "94351253",
"email" : "alice@example.com",
"address" : "123, Jurong West Ave 6, #08-111",
"type" : "client",
"tags" : [ "friends" ]
}, {
"name" : "Benson Meier",
"phone" : "98765432",
"email" : "johnd@example.com",
"address" : "311, Clementi Ave 2, #02-25",
"type" : "client",
"tags" : [ "owesMoney", "friends" ]
}, {
"name" : "Carl Kurz",
"phone" : "95352563",
"email" : "heinz@example.com",
"address" : "wall street",
"type" : "client",
"tags" : [ ]
}, {
"name" : "Daniel Meier",
"phone" : "87652533",
"email" : "cornelia@example.com",
"address" : "10th street",
"type" : "client",
"tags" : [ "friends" ]
}, {
"name" : "Elle Meyer",
"phone" : "9482224",
"email" : "werner@example.com",
"address" : "michegan ave",
"type" : "client",
"tags" : [ ]
}, {
"name" : "Fiona Kunz",
"phone" : "9482427",
"email" : "lydia@example.com",
"address" : "little tokyo",
"type" : "client",
"tags" : [ ]
}, {
"name" : "George Best",
"phone" : "9482442",
"email" : "anna@example.com",
"address" : "4th street",
"type" : "client",
"tags" : [ ]
} ]
}
Original file line number Diff line number Diff line change
@@ -41,6 +41,7 @@ public class CommandTestUtil {

public static final String TYPE_DESC_AMY = " " + VALID_TYPE_AMY;

public static final String TYPE_DESC_BOB = " " + VALID_TYPE_BOB;
public static final String NAME_DESC_AMY = " " + PREFIX_NAME + VALID_NAME_AMY;
public static final String NAME_DESC_BOB = " " + PREFIX_NAME + VALID_NAME_BOB;
public static final String PHONE_DESC_AMY = " " + PREFIX_PHONE + VALID_PHONE_AMY;
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
package seedu.address.logic.commands;

import static seedu.address.logic.commands.CommandTestUtil.assertCommandFailure;
import static seedu.address.logic.commands.CommandTestUtil.assertCommandSuccess;
import static seedu.address.logic.commands.CommandTestUtil.showPersonAtIndex;
import static seedu.address.testutil.TypicalIndexes.INDEX_FIRST_PERSON;
import static seedu.address.testutil.TypicalPersons.getTypicalAddressBook;

import org.junit.jupiter.api.BeforeEach;
70 changes: 36 additions & 34 deletions src/test/java/seedu/address/logic/parser/AddCommandParserTest.java
Original file line number Diff line number Diff line change
@@ -18,6 +18,8 @@
import static seedu.address.logic.commands.CommandTestUtil.PREAMBLE_WHITESPACE;
import static seedu.address.logic.commands.CommandTestUtil.TAG_DESC_FRIEND;
import static seedu.address.logic.commands.CommandTestUtil.TAG_DESC_HUSBAND;
import static seedu.address.logic.commands.CommandTestUtil.TYPE_DESC_AMY;
import static seedu.address.logic.commands.CommandTestUtil.TYPE_DESC_BOB;
import static seedu.address.logic.commands.CommandTestUtil.VALID_ADDRESS_BOB;
import static seedu.address.logic.commands.CommandTestUtil.VALID_EMAIL_BOB;
import static seedu.address.logic.commands.CommandTestUtil.VALID_NAME_BOB;
@@ -53,16 +55,16 @@ public void parse_allFieldsPresent_success() {
Person expectedPerson = new PersonBuilder(BOB).withTags(VALID_TAG_FRIEND).build();

// whitespace only preamble
assertParseSuccess(parser, PREAMBLE_WHITESPACE + NAME_DESC_BOB + PHONE_DESC_BOB + EMAIL_DESC_BOB
+ ADDRESS_DESC_BOB + TAG_DESC_FRIEND, new AddCommand(expectedPerson));
assertParseSuccess(parser, PREAMBLE_WHITESPACE + TYPE_DESC_BOB + NAME_DESC_BOB + PHONE_DESC_BOB
+ EMAIL_DESC_BOB + ADDRESS_DESC_BOB + TAG_DESC_FRIEND, new AddCommand(expectedPerson));


// multiple tags - all accepted
Person expectedPersonMultipleTags = new PersonBuilder(BOB).withTags(VALID_TAG_FRIEND, VALID_TAG_HUSBAND)
.build();
assertParseSuccess(parser,
NAME_DESC_BOB + PHONE_DESC_BOB + EMAIL_DESC_BOB + ADDRESS_DESC_BOB + TAG_DESC_HUSBAND + TAG_DESC_FRIEND,
new AddCommand(expectedPersonMultipleTags));
assertParseSuccess(parser, TYPE_DESC_BOB
+ NAME_DESC_BOB + PHONE_DESC_BOB + EMAIL_DESC_BOB + ADDRESS_DESC_BOB + TAG_DESC_HUSBAND
+ TAG_DESC_FRIEND, new AddCommand(expectedPersonMultipleTags));
}

@Test
@@ -71,69 +73,69 @@ public void parse_repeatedNonTagValue_failure() {
+ ADDRESS_DESC_BOB + TAG_DESC_FRIEND;

// multiple names
assertParseFailure(parser, NAME_DESC_AMY + validExpectedPersonString,
assertParseFailure(parser, TYPE_DESC_AMY + NAME_DESC_AMY + validExpectedPersonString,
Messages.getErrorMessageForDuplicatePrefixes(PREFIX_NAME));

// multiple phones
assertParseFailure(parser, PHONE_DESC_AMY + validExpectedPersonString,
assertParseFailure(parser, TYPE_DESC_AMY + PHONE_DESC_AMY + validExpectedPersonString,
Messages.getErrorMessageForDuplicatePrefixes(PREFIX_PHONE));

// multiple emails
assertParseFailure(parser, EMAIL_DESC_AMY + validExpectedPersonString,
assertParseFailure(parser, TYPE_DESC_AMY + EMAIL_DESC_AMY + validExpectedPersonString,
Messages.getErrorMessageForDuplicatePrefixes(PREFIX_EMAIL));

// multiple addresses
assertParseFailure(parser, ADDRESS_DESC_AMY + validExpectedPersonString,
assertParseFailure(parser, TYPE_DESC_AMY + ADDRESS_DESC_AMY + validExpectedPersonString,
Messages.getErrorMessageForDuplicatePrefixes(PREFIX_ADDRESS));

// multiple fields repeated
assertParseFailure(parser,
validExpectedPersonString + PHONE_DESC_AMY + EMAIL_DESC_AMY + NAME_DESC_AMY + ADDRESS_DESC_AMY
assertParseFailure(parser, TYPE_DESC_AMY
+ validExpectedPersonString + PHONE_DESC_AMY + EMAIL_DESC_AMY + NAME_DESC_AMY + ADDRESS_DESC_AMY
+ validExpectedPersonString,
Messages.getErrorMessageForDuplicatePrefixes(PREFIX_NAME, PREFIX_ADDRESS, PREFIX_EMAIL, PREFIX_PHONE));

// invalid value followed by valid value

// invalid name
assertParseFailure(parser, INVALID_NAME_DESC + validExpectedPersonString,
assertParseFailure(parser, TYPE_DESC_AMY + INVALID_NAME_DESC + validExpectedPersonString,
Messages.getErrorMessageForDuplicatePrefixes(PREFIX_NAME));

// invalid email
assertParseFailure(parser, INVALID_EMAIL_DESC + validExpectedPersonString,
assertParseFailure(parser, TYPE_DESC_AMY + INVALID_EMAIL_DESC + validExpectedPersonString,
Messages.getErrorMessageForDuplicatePrefixes(PREFIX_EMAIL));

// invalid phone
assertParseFailure(parser, INVALID_PHONE_DESC + validExpectedPersonString,
assertParseFailure(parser, TYPE_DESC_AMY + INVALID_PHONE_DESC + validExpectedPersonString,
Messages.getErrorMessageForDuplicatePrefixes(PREFIX_PHONE));

// invalid address
assertParseFailure(parser, INVALID_ADDRESS_DESC + validExpectedPersonString,
assertParseFailure(parser, TYPE_DESC_AMY + INVALID_ADDRESS_DESC + validExpectedPersonString,
Messages.getErrorMessageForDuplicatePrefixes(PREFIX_ADDRESS));

// valid value followed by invalid value

// invalid name
assertParseFailure(parser, validExpectedPersonString + INVALID_NAME_DESC,
assertParseFailure(parser, TYPE_DESC_AMY + validExpectedPersonString + INVALID_NAME_DESC,
Messages.getErrorMessageForDuplicatePrefixes(PREFIX_NAME));

// invalid email
assertParseFailure(parser, validExpectedPersonString + INVALID_EMAIL_DESC,
assertParseFailure(parser, TYPE_DESC_AMY + validExpectedPersonString + INVALID_EMAIL_DESC,
Messages.getErrorMessageForDuplicatePrefixes(PREFIX_EMAIL));

// invalid phone
assertParseFailure(parser, validExpectedPersonString + INVALID_PHONE_DESC,
assertParseFailure(parser, TYPE_DESC_AMY + validExpectedPersonString + INVALID_PHONE_DESC,
Messages.getErrorMessageForDuplicatePrefixes(PREFIX_PHONE));

// invalid address
assertParseFailure(parser, validExpectedPersonString + INVALID_ADDRESS_DESC,
assertParseFailure(parser, TYPE_DESC_AMY + validExpectedPersonString + INVALID_ADDRESS_DESC,
Messages.getErrorMessageForDuplicatePrefixes(PREFIX_ADDRESS));
}

@Test
public void parse_optionalFieldsMissing_success() {
// zero tags
Person expectedPerson = new PersonBuilder(AMY).withTags().build();
assertParseSuccess(parser, NAME_DESC_AMY + PHONE_DESC_AMY + EMAIL_DESC_AMY + ADDRESS_DESC_AMY,
assertParseSuccess(parser, TYPE_DESC_AMY + NAME_DESC_AMY + PHONE_DESC_AMY + EMAIL_DESC_AMY + ADDRESS_DESC_AMY,
new AddCommand(expectedPerson));
}

@@ -165,32 +167,32 @@ public void parse_compulsoryFieldMissing_failure() {
@Test
public void parse_invalidValue_failure() {
// invalid name
assertParseFailure(parser, INVALID_NAME_DESC + PHONE_DESC_BOB + EMAIL_DESC_BOB + ADDRESS_DESC_BOB
+ TAG_DESC_HUSBAND + TAG_DESC_FRIEND, Name.MESSAGE_CONSTRAINTS);
assertParseFailure(parser, TYPE_DESC_AMY + INVALID_NAME_DESC + PHONE_DESC_BOB + EMAIL_DESC_BOB
+ ADDRESS_DESC_BOB + TAG_DESC_HUSBAND + TAG_DESC_FRIEND, Name.MESSAGE_CONSTRAINTS);

// invalid phone
assertParseFailure(parser, NAME_DESC_BOB + INVALID_PHONE_DESC + EMAIL_DESC_BOB + ADDRESS_DESC_BOB
+ TAG_DESC_HUSBAND + TAG_DESC_FRIEND, Phone.MESSAGE_CONSTRAINTS);
assertParseFailure(parser, TYPE_DESC_AMY + NAME_DESC_BOB + INVALID_PHONE_DESC + EMAIL_DESC_BOB
+ ADDRESS_DESC_BOB + TAG_DESC_HUSBAND + TAG_DESC_FRIEND, Phone.MESSAGE_CONSTRAINTS);

// invalid email
assertParseFailure(parser, NAME_DESC_BOB + PHONE_DESC_BOB + INVALID_EMAIL_DESC + ADDRESS_DESC_BOB
+ TAG_DESC_HUSBAND + TAG_DESC_FRIEND, Email.MESSAGE_CONSTRAINTS);
assertParseFailure(parser, TYPE_DESC_AMY + NAME_DESC_BOB + PHONE_DESC_BOB + INVALID_EMAIL_DESC
+ ADDRESS_DESC_BOB + TAG_DESC_HUSBAND + TAG_DESC_FRIEND, Email.MESSAGE_CONSTRAINTS);

// invalid address
assertParseFailure(parser, NAME_DESC_BOB + PHONE_DESC_BOB + EMAIL_DESC_BOB + INVALID_ADDRESS_DESC
+ TAG_DESC_HUSBAND + TAG_DESC_FRIEND, Address.MESSAGE_CONSTRAINTS);
assertParseFailure(parser, TYPE_DESC_AMY + NAME_DESC_BOB + PHONE_DESC_BOB + EMAIL_DESC_BOB
+ INVALID_ADDRESS_DESC + TAG_DESC_HUSBAND + TAG_DESC_FRIEND, Address.MESSAGE_CONSTRAINTS);

// invalid tag
assertParseFailure(parser, NAME_DESC_BOB + PHONE_DESC_BOB + EMAIL_DESC_BOB + ADDRESS_DESC_BOB
+ INVALID_TAG_DESC + VALID_TAG_FRIEND, Tag.MESSAGE_CONSTRAINTS);
assertParseFailure(parser, TYPE_DESC_AMY + NAME_DESC_BOB + PHONE_DESC_BOB + EMAIL_DESC_BOB
+ ADDRESS_DESC_BOB + INVALID_TAG_DESC + VALID_TAG_FRIEND, Tag.MESSAGE_CONSTRAINTS);

// two invalid values, only first invalid value reported
assertParseFailure(parser, INVALID_NAME_DESC + PHONE_DESC_BOB + EMAIL_DESC_BOB + INVALID_ADDRESS_DESC,
Name.MESSAGE_CONSTRAINTS);
assertParseFailure(parser, TYPE_DESC_AMY + INVALID_NAME_DESC + PHONE_DESC_BOB + EMAIL_DESC_BOB
+ INVALID_ADDRESS_DESC, Name.MESSAGE_CONSTRAINTS);

// non-empty preamble
assertParseFailure(parser, PREAMBLE_NON_EMPTY + NAME_DESC_BOB + PHONE_DESC_BOB + EMAIL_DESC_BOB
+ ADDRESS_DESC_BOB + TAG_DESC_HUSBAND + TAG_DESC_FRIEND,
assertParseFailure(parser, PREAMBLE_NON_EMPTY + TYPE_DESC_AMY + NAME_DESC_BOB + PHONE_DESC_BOB
+ EMAIL_DESC_BOB + ADDRESS_DESC_BOB + TAG_DESC_HUSBAND + TAG_DESC_FRIEND,
String.format(MESSAGE_INVALID_COMMAND_FORMAT, AddCommand.MESSAGE_USAGE));
}
}
Original file line number Diff line number Diff line change
@@ -89,7 +89,7 @@ public void parseCommand_list() throws Exception {
ListCommand.COMMAND_WORD + " " + ALLOWED_PREAMBLES[0]) instanceof ListCommand);
assertTrue(parser.parseCommand(
ListCommand.COMMAND_WORD + " " + ALLOWED_PREAMBLES[1]) instanceof ListCommand);
assertTrue(parser.parseCommand(ListCommand.COMMAND_WORD + " 3") instanceof ListCommand);
assertTrue(parser.parseCommand(ListCommand.COMMAND_WORD + " client") instanceof ListCommand);
}

@Test
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package seedu.address.logic.parser;

import static org.junit.jupiter.api.Assertions.assertEquals;
import static seedu.address.logic.Messages.MESSAGE_INVALID_COMMAND_FORMAT;
import static seedu.address.logic.parser.CommandParserTestUtil.assertParseFailure;
import static seedu.address.logic.parser.CommandParserTestUtil.assertParseSuccess;
40 changes: 19 additions & 21 deletions src/test/java/seedu/address/model/person/HousekeeperTest.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package seedu.address.model.person;

import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertTrue;
@@ -17,7 +16,6 @@
import static seedu.address.logic.commands.CommandTestUtil.VALID_TYPE_AMY;
import static seedu.address.logic.commands.CommandTestUtil.VALID_TYPE_BOB;
import static seedu.address.testutil.Assert.assertThrows;
import static seedu.address.testutil.TypicalPersons.ALICE;
import static seedu.address.testutil.TypicalPersons.AMY;
import static seedu.address.testutil.TypicalPersons.BOB;

@@ -30,7 +28,7 @@
import seedu.address.testutil.PersonBuilder;

public class HousekeeperTest {
private static Housekeeper COPY_BOB;
private static Housekeeper copyBob;

@Test
public void asObservableList_modifyList_throwsUnsupportedOperationException() {
@@ -40,19 +38,19 @@ public void asObservableList_modifyList_throwsUnsupportedOperationException() {

static {
try {
ArrayList<String> BOB_TAGS = new ArrayList<>();
BOB_TAGS.add(VALID_TAG_HUSBAND);
BOB_TAGS.add(VALID_TAG_FRIEND);
COPY_BOB = new Housekeeper(
ArrayList<String> bobTags = new ArrayList<>();
bobTags.add(VALID_TAG_HUSBAND);
bobTags.add(VALID_TAG_FRIEND);
copyBob = new Housekeeper(
ParserUtil.parseName(VALID_NAME_BOB),
ParserUtil.parsePhone(VALID_PHONE_BOB),
ParserUtil.parseEmail(VALID_EMAIL_BOB),
ParserUtil.parseAddress(VALID_ADDRESS_BOB),
ParserUtil.parseTags(BOB_TAGS),
ParserUtil.parseTags(bobTags),
ParserUtil.parseType(VALID_TYPE_BOB));

//Assert that created Housekeeper object is not null
assertNotNull(COPY_BOB);
assertNotNull(copyBob);
} catch (ParseException e) {
e.printStackTrace();
}
@@ -61,43 +59,43 @@ public void asObservableList_modifyList_throwsUnsupportedOperationException() {
@Test
public void equals() {
// same values -> returns true
assertTrue(COPY_BOB.equals(BOB));
assertTrue(copyBob.equals(BOB));

// same object -> returns true
assertTrue(COPY_BOB.equals(COPY_BOB));
assertTrue(copyBob.equals(copyBob));

// null -> returns false
assertFalse(COPY_BOB.equals(null));
assertFalse(copyBob.equals(null));

// different type -> returns false
assertFalse(COPY_BOB.equals(5));
assertFalse(copyBob.equals(5));

// different person -> returns false
assertFalse(COPY_BOB.equals(AMY));
assertFalse(copyBob.equals(AMY));

// different name -> returns false
Person editedCopyBob = new PersonBuilder(BOB).withName(VALID_NAME_AMY).build();
assertFalse(COPY_BOB.equals(editedCopyBob));
assertFalse(copyBob.equals(editedCopyBob));

// different phone -> returns false
editedCopyBob = new PersonBuilder(BOB).withPhone(VALID_PHONE_AMY).build();
assertFalse(COPY_BOB.equals(editedCopyBob));
assertFalse(copyBob.equals(editedCopyBob));

// different email -> returns false
editedCopyBob = new PersonBuilder(BOB).withEmail(VALID_EMAIL_AMY).build();
assertFalse(COPY_BOB.equals(editedCopyBob));
assertFalse(copyBob.equals(editedCopyBob));

// different address -> returns false
editedCopyBob = new PersonBuilder(BOB).withAddress(VALID_ADDRESS_AMY).build();
assertFalse(COPY_BOB.equals(editedCopyBob));
assertFalse(copyBob.equals(editedCopyBob));

// different tags -> returns false
editedCopyBob = new PersonBuilder(BOB).withTags(VALID_TAG_HUSBAND).build();
assertFalse(COPY_BOB.equals(editedCopyBob));
assertFalse(copyBob.equals(editedCopyBob));

// different type -> returns false
editedCopyBob = new PersonBuilder(BOB).withType(VALID_TYPE_AMY).build();
assertFalse(COPY_BOB.equals(editedCopyBob));
assertFalse(copyBob.equals(editedCopyBob));
}

@Test
@@ -109,6 +107,6 @@ public void isClient() {
assertFalse(BOB.isClient());

//is a housekeeper -> return false
assertFalse(COPY_BOB.isClient());
assertFalse(copyBob.isClient());
}
}
Loading

0 comments on commit 9dfb731

Please sign in to comment.