1/* GENERATED SOURCE. DO NOT MODIFY. */
2// © 2016 and later: Unicode, Inc. and others.
3// License & terms of use: http://www.unicode.org/copyright.html#License
4/*
5 ******************************************************************************************
6 * Copyright (C) 2009-2010, Google, Inc.; International Business Machines Corporation and *
7 * others. All Rights Reserved.                                                           *
8 ******************************************************************************************
9 */
10
11package android.icu.dev.test.util;
12
13import org.junit.Test;
14import org.junit.runner.RunWith;
15import org.junit.runners.JUnit4;
16
17import android.icu.dev.test.TestFmwk;
18import android.icu.util.LocalePriorityList;
19import android.icu.util.ULocale;
20import android.icu.testsharding.MainTestShard;
21
22/**
23 * Test the LanguagePriorityList
24 * @author markdavis@google.com
25 */
26@MainTestShard
27@RunWith(JUnit4.class)
28public class LocalePriorityListTest extends TestFmwk {
29  @Test
30  public void testLanguagePriorityList() {
31    final String expected = "af, en, fr";
32
33    LocalePriorityList list = LocalePriorityList.add("af, en, fr;q=0.9").build();
34    assertEquals(expected, list.toString());
35
36    // check looseness, and that later values win
37    LocalePriorityList list2 = LocalePriorityList.add(
38        ", fr ; q = 0.9 ,   en;q=0.1 , af, en, de;q=0, ").build();
39    assertEquals(expected, list2.toString());
40    assertEquals(list, list2);
41
42    LocalePriorityList list3 = LocalePriorityList
43        .add(new ULocale("af"))
44        .add(ULocale.FRENCH, 0.9d)
45        .add(ULocale.ENGLISH)
46        .build();
47    assertEquals(expected, list3.toString());
48    assertEquals(list, list3);
49
50    LocalePriorityList list4 = LocalePriorityList
51    .add(list).build();
52    assertEquals(expected, list4.toString());
53    assertEquals(list, list4);
54
55    LocalePriorityList list5 = LocalePriorityList.add("af, fr;q=0.9, en").build(true);
56    assertEquals("af, en, fr;q=0.9", list5.toString());
57  }
58
59private void assertEquals(Object expected, Object string) {
60    assertEquals("", expected, string);
61}
62}
63