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
gosongying authored Mar 21, 2024

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
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.