Skip to content

Commit

Permalink
Merge pull request #270 from AY2324S2-CS2103T-W12-3/269-find-asset-fix
Browse files Browse the repository at this point in the history
Fix finding Assets when contact has no Tag
  • Loading branch information
aureliony authored Apr 12, 2024
2 parents 5b73e93 + 0ed71aa commit 0837e5c
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -39,8 +39,8 @@ private static String processString(String str) {
@Override
public boolean test(Person person) {
return doesStringMatchQuery(person.getName().toString(), query)
|| person.getTags().stream().anyMatch(tag -> doesStringMatchQuery(tag.get(), query)
|| person.getAssets().stream().anyMatch(asset -> doesStringMatchQuery(asset.get(), query)));
|| person.getTags().stream().anyMatch(tag -> doesStringMatchQuery(tag.get(), query))
|| person.getAssets().stream().anyMatch(asset -> doesStringMatchQuery(asset.get(), query));
}

//@@author rizkidelta
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,14 @@ public void test_nameMatchesQuery_returnsTrue() {
// Query without whitespace
predicate = new PersonMatchesQueryPredicate("xy");
assertTrue(predicate.test(new PersonBuilder().withName("Alex Yeoh").build()));

// Query without tags
predicate = new PersonMatchesQueryPredicate("Alice Bob");
assertTrue(predicate.test(new PersonBuilder().withName("Alice Bob").withTags(new String[0]).build()));

// Query without assets
predicate = new PersonMatchesQueryPredicate("Alice Bob");
assertTrue(predicate.test(new PersonBuilder().withName("Alice Bob").withAssets(new String[0]).build()));
}

@Test
Expand Down Expand Up @@ -120,6 +128,10 @@ public void test_tagMatchesQuery_returnsTrue() {
// Short query, long tag
predicate = new PersonMatchesQueryPredicate("a");
assertTrue(predicate.test(new PersonBuilder().withTags("colleagues").build()));

// No assets
predicate = new PersonMatchesQueryPredicate("friends");
assertTrue(predicate.test(new PersonBuilder().withTags("friends").withAssets(new String[0]).build()));
}

@Test
Expand Down Expand Up @@ -150,6 +162,10 @@ public void test_assetMatchesQuery_returnsTrue() {
// Query without whitespace
predicate = new PersonMatchesQueryPredicate("rsc");
assertTrue(predicate.test(new PersonBuilder().withAssets("hammer screw").build()));

// No tags
predicate = new PersonMatchesQueryPredicate("hammer");
assertTrue(predicate.test(new PersonBuilder().withAssets("hammer").withTags(new String[0]).build()));
}

@Test
Expand Down

0 comments on commit 0837e5c

Please sign in to comment.