package pl.matisoft.soy.locale; import javax.servlet.http.HttpServletRequest; import java.util.Locale; import com.google.common.base.Optional; import org.junit.Assert; import org.junit.Before; import org.junit.Test; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import static org.junit.Assert.*; import static org.mockito.Mockito.*; /** * Created with IntelliJ IDEA. * User: mszczap * Date: 18.10.13 * Time: 18:54 */ public class AcceptHeaderLocaleProviderTest { private AcceptHeaderLocaleProvider acceptHeaderLocaleProvider = new AcceptHeaderLocaleProvider(); @Mock private HttpServletRequest request; @Before public void setUp() throws Exception { MockitoAnnotations.initMocks(this); } @Test public void shouldThrowNPE() throws Exception { try { acceptHeaderLocaleProvider.resolveLocale(null); fail("npe should be thrown"); } catch (Exception ex) { } } @Test public void shouldReturnLocale() throws Exception { when(request.getLocale()).thenReturn(Locale.GERMAN); final Optional<Locale> localeOptional = acceptHeaderLocaleProvider.resolveLocale(request); Assert.assertTrue("locale should be present", localeOptional.isPresent()); Assert.assertEquals("locale should be German", Locale.GERMAN, localeOptional.get()); } }