Skip to content

Commit

Permalink
attempt to incorporate @JelleZijlstra suffix suggestions as mentioned…
Browse files Browse the repository at this point in the history
… in #143 (comment) . thank you @JelleZijlstra!
  • Loading branch information
Jorrit Poelen committed Jun 27, 2024
1 parent b67e00d commit b3d3e9b
Show file tree
Hide file tree
Showing 2 changed files with 49 additions and 1 deletion.
5 changes: 4 additions & 1 deletion nomer/src/main/java/org/eol/globi/service/Synonymizer.java
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,11 @@ public class Synonymizer implements TermMatcher {
put("is", Arrays.asList("e")); // e.g., Baeodon gracilis -> Baeodon gracile
put("e", Arrays.asList("is")); // e.g., Styloctenium mindorense -> Styloctenium mindorensis
put("or", Arrays.asList("us")); //e.g., major -> majus
put("i", Arrays.asList("ii")); // e.g., Mops bemmeleni -> Mops bemmelenii
put("i", Arrays.asList("ii", "ae", "orum", "ei")); // e.g., Mops bemmeleni -> Mops bemmelenii, Pteropus gilliardi -> Pteropus gilliardorum, Plecotus christii -> Plecotus christiei
put("ae", Arrays.asList("i")); // e.g., Crocidura greenwoodae -> Crocidura greenwoodi
put("ei", Arrays.asList("i", "ii")); // e.g., Plecotus christiei -> Plecotus christii
put("ii", Arrays.asList("i")); // e.g., Plecotus christii -> Plecotus christi
put("orum", Arrays.asList("i")); // e.g., Pteropus gilliardorum -> Pteropus gilliardi
}};

public Synonymizer(TermMatcher matcher) {
Expand Down
45 changes: 45 additions & 0 deletions nomer/src/test/java/org/eol/globi/service/SynonymizerTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -161,6 +161,51 @@ public void proposeNameAlternate8() {
);
}

@Test
public void proposeNameAlternatePeromyscus_boylei() {
List<String> alternate = Synonymizer.proposeSynonymForUpToTwoNonGenusNameParts("Peromyscus boylei");
assertThat(
alternate,
hasItems("Peromyscus boylii")
);
}

@Test
public void proposeNameAlternatePlecotus_christii () {
List<String> alternate = Synonymizer.proposeSynonymForUpToTwoNonGenusNameParts("Plecotus christii");
assertThat(
alternate,
hasItems("Plecotus christiei")
);
}

@Test
public void proposeNameAlternatePteropus_gilliardi () {
List<String> alternate = Synonymizer.proposeSynonymForUpToTwoNonGenusNameParts("Pteropus gilliardi");
assertThat(
alternate,
hasItems("Pteropus gilliardorum")
);
}

@Test
public void proposeNameAlternateCrocidura_greenwoodae () {
List<String> alternate = Synonymizer.proposeSynonymForUpToTwoNonGenusNameParts("Crocidura greenwoodae");
assertThat(
alternate,
hasItems("Crocidura greenwoodi")
);
}

@Test
public void proposeNameAlternateCrocidura_greenwoodi () {
List<String> alternate = Synonymizer.proposeSynonymForUpToTwoNonGenusNameParts("Crocidura greenwoodi");
assertThat(
alternate,
hasItems("Crocidura greenwoodae")
);
}

@Test
public void superLong() {
List<String> alternate = Synonymizer.proposeSynonymForUpToTwoNonGenusNameParts("Donald majus bla blaus bla bla bla bla");
Expand Down

0 comments on commit b3d3e9b

Please sign in to comment.