package com.processpuzzle.internalization.domain; import static org.junit.Assert.assertEquals; import org.junit.Test; import com.processpuzzle.internalization.domain.LocaleParseException; import com.processpuzzle.internalization.domain.ProcessPuzzleLocale; import com.processpuzzle.internalization.domain.UnsupportedLocaleException; public class ProcessPuzzleLocaleTest { @Test public void parse_ForFull() { ProcessPuzzleLocale locale = ProcessPuzzleLocale.parse("en_US_WIN"); assertEquals("en", locale.getLanguage()); assertEquals("US", locale.getCountry()); assertEquals("WIN", locale.getVariant()); } @Test public void parse_ForCommaSeparator() { ProcessPuzzleLocale locale = ProcessPuzzleLocale.parse("en, US, WIN"); assertEquals("en", locale.getLanguage()); assertEquals("US", locale.getCountry()); assertEquals("WIN", locale.getVariant()); } @Test public void parse_ForLanguageAndCountry() { ProcessPuzzleLocale locale = ProcessPuzzleLocale.parse("hu_HU"); assertEquals("hu", locale.getLanguage()); assertEquals("HU", locale.getCountry()); } @Test public void parse_ForLanguageOnly() { ProcessPuzzleLocale locale = ProcessPuzzleLocale.parse("en"); assertEquals("en", locale.getLanguage()); } @Test (expected = LocaleParseException.class) public void parse_ForDummySpecifier() { ProcessPuzzleLocale.parse("Dummy"); } @Test (expected = UnsupportedLocaleException.class) public void instantiation_ForUnsupportedLocale() { new ProcessPuzzleLocale( "BlaBla" ); } }