diff -r d0f57d3ea898 -r d382dacfd73f rt/emul/compact/src/test/java/org/apidesign/bck2brwsr/compact/tck/CollectionsTest.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rt/emul/compact/src/test/java/org/apidesign/bck2brwsr/compact/tck/CollectionsTest.java Tue Feb 26 16:54:16 2013 +0100 @@ -0,0 +1,107 @@ +/** + * Back 2 Browser Bytecode Translator + * Copyright (C) 2012 Jaroslav Tulach + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, version 2 of the License. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. Look for COPYING file in the top folder. + * If not, see http://opensource.org/licenses/GPL-2.0. + */ +package org.apidesign.bck2brwsr.compact.tck; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collection; +import java.util.Comparator; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; +import java.util.Vector; +import org.apidesign.bck2brwsr.vmtest.Compare; +import org.apidesign.bck2brwsr.vmtest.VMTest; +import org.testng.annotations.Factory; + +/** + * + * @author Jaroslav Tulach + */ +public class CollectionsTest { + @Compare public String sortStringsInArray() { + List list = new ArrayList<>(); + list.add("one"); + list.add("two"); + list.add("three"); + list.add("four"); + list.add("five"); + list.add("six"); + list.add("seven"); + list.add("eight"); + list.add("nine"); + list.add("ten"); + + String[] arr = list.toArray(new String[list.size()]); + Arrays.sort(arr); + + return Arrays.asList(arr).toString(); + } + + @Compare public String sortStringsInHashSet() { + Collection list = new HashSet<>(); + list.add("one"); + list.add("two"); + list.add("three"); + list.add("four"); + list.add("five"); + list.add("six"); + list.add("seven"); + list.add("eight"); + list.add("nine"); + list.add("ten"); + + String[] arr = list.toArray(new String[0]); + Arrays.sort(arr); + + return Arrays.asList(arr).toString(); + } + + @SuppressWarnings("unchecked") + @Compare public String sortStringsInHashMapWithComparator() { + class C implements Comparator> { + public int compare(Map.Entry o1, Map.Entry o2) { + return o1.getKey().compareTo(o2.getKey()); + } + } + + Map map = new HashMap<>(); + map.put("one", 1); + map.put("two", 2); + map.put("three", 3); + map.put("four", 4); + map.put("five", 5); + map.put("six", 6); + map.put("seven", 7); + map.put("eight", 8); + map.put("nine", 9); + map.put("ten", 10); + + List> arr = new Vector<>(); + arr.addAll(map.entrySet()); + return arr.toString(); + } + + @Factory + public static Object[] create() { + return VMTest.create(CollectionsTest.class); + } + +}