package org.nextprot.api.commons.utils; import org.junit.Assert; import org.junit.Test; public class AuthorNameFormatterTest { private AuthorNameFormatter formatter = new AuthorNameFormatter(); @Test public void testFormatPublicationForenameInitials() { Assert.assertEquals("A.G.", formatter.formatForenameInitials("Alexey G")); } @Test public void testFormatPublicationForenameInitialsFromInitials() { Assert.assertEquals("A.G.", formatter.formatForenameInitials("A G")); } @Test public void testFormatPublicationForenameInitialsWithDash1() { Assert.assertEquals("J.-C.", formatter.formatForenameInitials("Jean-Christophe")); } @Test public void testFormatPublicationForenameInitialsWithDash2() { Assert.assertEquals("J.-C.", formatter.formatForenameInitials("J-C")); } @Test public void testFormatPublicationForenameInitialsWithDashIdempotent() { Assert.assertEquals("J.-C.", formatter.formatForenameInitials("J.-C.")); } // http://www.uniprot.org/citations/25061178 @Test public void testFormatPublicationForenameInitialsWithSuffixJr() { Assert.assertEquals("J.D. Jr.", formatter.formatForenameInitials("John D", "Jr")); } //http://www.uniprot.org/citations/16793063 @Test public void testFormatPublicationForenameInitialsWithSuffixNth() { Assert.assertEquals("A.W. IV", formatter.formatForenameInitials("Alexander W", "4th")); } //Rocha "Francisco Dário" Filho @Test public void testFormatPublicationForenameInitialsWithSuffixFilho() { Assert.assertEquals("F.D. Jr.", formatter.formatForenameInitials("Francisco Dário", "Filho")); } @Test public void testFormatPublicationSuffixNth() { Assert.assertEquals("I", formatter.formatSuffix("1st")); Assert.assertEquals("I", formatter.formatSuffix("I")); Assert.assertEquals("II", formatter.formatSuffix("2nd")); Assert.assertEquals("III", formatter.formatSuffix("3rd")); Assert.assertEquals("IV", formatter.formatSuffix("4th")); Assert.assertEquals("V", formatter.formatSuffix("5th")); Assert.assertEquals("V", formatter.formatSuffix("V")); Assert.assertEquals("VI", formatter.formatSuffix("6th")); } @Test public void testFormatPublicationSuffixJunior() { Assert.assertEquals("Jr.", formatter.formatSuffix("Jr")); } @Test public void testFormatPublicationSuffixJunior2() { Assert.assertEquals("Jr.", formatter.formatSuffix("Filho")); } @Test public void testFormatPublicationSuffixSenior() { Assert.assertEquals("Sr.", formatter.formatSuffix("Sr")); } @Test public void testFormatPublicationForenameEmpty() { Assert.assertEquals("", formatter.formatForenameInitials(" ")); } @Test public void testFormatPublicationWithForenameContainingMultipleSpaces() { Assert.assertEquals("J.P.", formatter.formatForenameInitials("Jean Paul")); } @Test public void testWeirdFormatFromP02741() { Assert.assertEquals("C.P.-Y.", formatter.formatForenameInitials("Christine P -Y")); } }