package org.codehaus.httpcache4j; import org.junit.Assert; import org.codehaus.httpcache4j.preference.Preference; import org.junit.Test; import java.util.Arrays; import java.util.List; /** * @author Erlend Hamnaberg<erlend.hamnaberg@arktekk.no> */ public class PreferencesTest { @Test public void parseLocales() throws Exception { Header header = new Header(HeaderConstants.ACCEPT_LANGUAGE, "da, en-gb;q=0.8, en;q=0.7"); Headers headers = new Headers().add(header); List<Preference> acceptLanguage = headers.getAcceptLanguage(); Assert.assertEquals( Arrays.asList(new Preference("da"), new Preference("en-gb", 0.8), new Preference("en", 0.7)), acceptLanguage ); } @Test public void parseUnsortedLocales() throws Exception { Header header = new Header(HeaderConstants.ACCEPT_LANGUAGE, "en-gb;q=0.8, da, en;q=0.7"); Headers headers = new Headers().add(header); List<Preference> acceptLanguage = headers.getAcceptLanguage(); Assert.assertEquals( Arrays.asList(new Preference("da"), new Preference("en-gb", 0.8), new Preference("en", 0.7)), acceptLanguage ); } @Test public void parseCharsets() throws Exception { Header header = new Header(HeaderConstants.ACCEPT_CHARSET, "unicode, ISO-8859-1; q=0.9, US-ASCII; q=0.8"); Headers headers = new Headers().add(header); List<Preference> acceptCharset = headers.getAcceptCharset(); Assert.assertEquals( Arrays.asList(new Preference("unicode"), new Preference("ISO-8859-1", 0.9), new Preference("US-ASCII", 0.8)), acceptCharset ); } }