Skip to content

Commit c74fe89

Browse files
committed
Added name parser test with gender dispute.
1 parent 288269f commit c74fe89

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

src/test/functional/java/org/nameapi/client/services/parser/personnameparser/PersonNameParserCommandTest.java

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,15 @@
1010
import org.nameapi.ontology5.input.entities.person.NaturalInputPerson;
1111
import org.nameapi.ontology5.input.entities.person.NaturalInputPersonBuilder;
1212
import org.nameapi.ontology5.input.entities.person.gender.ComputedPersonGender;
13+
import org.nameapi.ontology5.input.entities.person.gender.StoragePersonGender;
1314
import org.nameapi.ontology5.input.entities.person.name.builder.AmericanInputPersonNameBuilder;
1415
import org.nameapi.ontology5.input.entities.person.name.builder.NameBuilders;
1516
import org.nameapi.ontology5.input.entities.person.name.builder.WesternInputPersonNameBuilder;
1617
import org.nameapi.ontology5.output.entities.person.name.OutputPersonName;
1718
import org.nameapi.ontology5.output.entities.person.name.TermType;
19+
import org.nameapi.ontology5.services.parser.personnameparser.DisputeType;
1820
import org.nameapi.ontology5.services.parser.personnameparser.ParsedPerson;
21+
import org.nameapi.ontology5.services.parser.personnameparser.ParsedPersonMatch;
1922
import org.nameapi.ontology5.services.parser.personnameparser.PersonNameParserResult;
2023
import org.testng.annotations.DataProvider;
2124
import org.testng.annotations.Test;
@@ -105,4 +108,26 @@ protected Object[][] testLegalPerson_1() {
105108
};
106109
}
107110

111+
112+
@Test
113+
public void genderDispute() throws Exception {
114+
NaturalInputPerson inputPerson = new NaturalInputPersonBuilder()
115+
.name(new WesternInputPersonNameBuilder().fullname("Petra Müller").build())
116+
.gender(StoragePersonGender.MALE)
117+
.build();
118+
PersonNameParserCommand command = new PersonNameParserCommand();
119+
Mode mode = FunctionalTestsNameApiModeFactory.functionalTest();
120+
PersonNameParserResult result = executor.execute(command, mode, inputPerson).get();
121+
ParsedPersonMatch bestMatch = result.getBestMatch();
122+
123+
ParsedPerson parsedPerson = bestMatch.getParsedPerson();
124+
OutputPersonName firstName = parsedPerson.getOutputPersonName();
125+
assertEquals("Petra", firstName.getFirst(TermType.GIVENNAME).get().getString());
126+
assertEquals("Müller", firstName.getFirst(TermType.SURNAME).get().getString());
127+
128+
assertEquals(parsedPerson.getGender().getGender(), ComputedPersonGender.FEMALE);
129+
assertEquals(bestMatch.getParserDisputes().size(), 1);
130+
assertEquals(bestMatch.getParserDisputes().get(0).getDisputeType(), DisputeType.GENDER);
131+
}
132+
108133
}

0 commit comments

Comments
 (0)