package com.vtence.molecule.http;
import org.junit.Test;
import static java.util.Locale.CANADA_FRENCH;
import static java.util.Locale.ENGLISH;
import static java.util.Locale.FRENCH;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.*;
public class ContentLanguageTest {
@Test public void
describesNoLocaleWhenEmpty() {
ContentLanguage contentLanguage = ContentLanguage.parse("");
assertThat("no locale", contentLanguage.locales(), empty());
}
@Test public void
describesNaturalLanguageOfContent() {
ContentLanguage contentLanguage = ContentLanguage.parse("fr");
assertThat("locales", contentLanguage.locales(), contains(FRENCH));
}
@Test public void
describesNaturalLanguageAndCountry() {
ContentLanguage contentLanguage = ContentLanguage.parse("fr-ca");
assertThat("locales", contentLanguage.locales(), contains(CANADA_FRENCH));
}
@Test public void
describesSeveralLocales() {
ContentLanguage contentLanguage = ContentLanguage.parse("fr-ca, en");
assertThat("locales", contentLanguage.locales(), contains(CANADA_FRENCH, ENGLISH));
}
@Test public void
hasAStringRepresentation() {
ContentLanguage contentLanguage = ContentLanguage.parse("fr-ca, en");
assertThat("header", contentLanguage.toString(), equalTo("fr-CA, en"));
}
}