Search in sources :

Example 6 with SafeTreeSet

use of com.google.common.collect.testing.SafeTreeSet in project guava by hceylan.

the class SetsTest method suite.

@GwtIncompatible("suite")
public static Test suite() {
    TestSuite suite = new TestSuite();
    suite.addTestSuite(SetsTest.class);
    suite.addTest(SetTestSuiteBuilder.using(new TestStringSetGenerator() {

        @Override
        protected Set<String> create(String[] elements) {
            int size = elements.length;
            // Remove last element, if size > 1
            Set<String> set1 = (size > 1) ? Sets.newHashSet(Arrays.asList(elements).subList(0, size - 1)) : Sets.newHashSet(elements);
            // Remove first element, if size > 0
            Set<String> set2 = (size > 0) ? Sets.newHashSet(Arrays.asList(elements).subList(1, size)) : Sets.<String>newHashSet();
            return Sets.union(set1, set2);
        }
    }).named("Sets.union").withFeatures(CollectionSize.ANY, CollectionFeature.ALLOWS_NULL_VALUES).createTestSuite());
    suite.addTest(SetTestSuiteBuilder.using(new TestStringSetGenerator() {

        @Override
        protected Set<String> create(String[] elements) {
            Set<String> set1 = Sets.newHashSet(elements);
            set1.add(samples().e3);
            Set<String> set2 = Sets.newHashSet(elements);
            set2.add(samples().e4);
            return Sets.intersection(set1, set2);
        }
    }).named("Sets.intersection").withFeatures(CollectionSize.ANY, CollectionFeature.ALLOWS_NULL_VALUES).createTestSuite());
    suite.addTest(SetTestSuiteBuilder.using(new TestStringSetGenerator() {

        @Override
        protected Set<String> create(String[] elements) {
            Set<String> set1 = Sets.newHashSet(elements);
            set1.add(samples().e3);
            Set<String> set2 = Sets.newHashSet(samples().e3);
            return Sets.difference(set1, set2);
        }
    }).named("Sets.difference").withFeatures(CollectionSize.ANY, CollectionFeature.ALLOWS_NULL_VALUES).createTestSuite());
    suite.addTest(SetTestSuiteBuilder.using(new TestEnumSetGenerator() {

        @Override
        protected Set<AnEnum> create(AnEnum[] elements) {
            AnEnum[] otherElements = new AnEnum[elements.length - 1];
            System.arraycopy(elements, 1, otherElements, 0, otherElements.length);
            return Sets.immutableEnumSet(elements[0], otherElements);
        }
    }).named("Sets.immutableEnumSet").withFeatures(CollectionSize.ONE, CollectionSize.SEVERAL, CollectionFeature.ALLOWS_NULL_QUERIES).createTestSuite());
    suite.addTest(NavigableSetTestSuiteBuilder.using(new TestStringSetGenerator() {

        @Override
        protected Set<String> create(String[] elements) {
            SafeTreeSet<String> set = new SafeTreeSet<String>(Arrays.asList(elements));
            return Sets.unmodifiableNavigableSet(set);
        }

        @Override
        public List<String> order(List<String> insertionOrder) {
            return Ordering.natural().sortedCopy(insertionOrder);
        }
    }).named("Sets.unmodifiableNavigableSet[TreeSet]").withFeatures(CollectionSize.ANY, CollectionFeature.KNOWN_ORDER).createTestSuite());
    suite.addTest(NavigableSetTestSuiteBuilder.using(new TestStringSetGenerator() {

        @Override
        protected Set<String> create(String[] elements) {
            SafeTreeSet<String> set = new SafeTreeSet<String>(Arrays.asList(elements));
            return SerializableTester.reserialize(Sets.unmodifiableNavigableSet(set));
        }

        @Override
        public List<String> order(List<String> insertionOrder) {
            return Ordering.natural().sortedCopy(insertionOrder);
        }
    }).named("Sets.unmodifiableNavigableSet[TreeSet], reserialized").withFeatures(CollectionSize.ANY, CollectionFeature.KNOWN_ORDER).createTestSuite());
    suite.addTest(testsForFilter());
    suite.addTest(testsForFilterNoNulls());
    suite.addTest(testsForFilterFiltered());
    return suite;
}
Also used : SortedSet(java.util.SortedSet) Sets.newHashSet(com.google.common.collect.Sets.newHashSet) Sets.newEnumSet(com.google.common.collect.Sets.newEnumSet) EnumSet(java.util.EnumSet) Set(java.util.Set) CopyOnWriteArraySet(java.util.concurrent.CopyOnWriteArraySet) Sets.powerSet(com.google.common.collect.Sets.powerSet) TreeSet(java.util.TreeSet) HashSet(java.util.HashSet) LinkedHashSet(java.util.LinkedHashSet) Collections.emptySet(java.util.Collections.emptySet) SafeTreeSet(com.google.common.collect.testing.SafeTreeSet) SafeTreeSet(com.google.common.collect.testing.SafeTreeSet) TestStringSetGenerator(com.google.common.collect.testing.TestStringSetGenerator) TestSuite(junit.framework.TestSuite) AnEnum(com.google.common.collect.testing.AnEnum) List(java.util.List) ArrayList(java.util.ArrayList) TestEnumSetGenerator(com.google.common.collect.testing.TestEnumSetGenerator) GwtIncompatible(com.google.common.annotations.GwtIncompatible)

Aggregations

SafeTreeSet (com.google.common.collect.testing.SafeTreeSet)6 List (java.util.List)6 SortedSet (java.util.SortedSet)6 TestSuite (junit.framework.TestSuite)6 TestStringSetGenerator (com.google.common.collect.testing.TestStringSetGenerator)5 Set (java.util.Set)5 NavigableSet (java.util.NavigableSet)3 GwtIncompatible (com.google.common.annotations.GwtIncompatible)2 Sets.newEnumSet (com.google.common.collect.Sets.newEnumSet)2 Sets.newHashSet (com.google.common.collect.Sets.newHashSet)2 Sets.powerSet (com.google.common.collect.Sets.powerSet)2 AnEnum (com.google.common.collect.testing.AnEnum)2 TestEnumSetGenerator (com.google.common.collect.testing.TestEnumSetGenerator)2 ArrayList (java.util.ArrayList)2 Collections.emptySet (java.util.Collections.emptySet)2 EnumSet (java.util.EnumSet)2 HashSet (java.util.HashSet)2 LinkedHashSet (java.util.LinkedHashSet)2 TreeSet (java.util.TreeSet)2 CopyOnWriteArraySet (java.util.concurrent.CopyOnWriteArraySet)2