1 package com.github.davidmoten.guavamini; 2 3 import static org.junit.Assert.assertEquals; 4 import static org.junit.Assert.assertTrue; 5 6 import java.util.Iterator; 7 8 import org.junit.Test; 9 10 import com.github.davidmoten.junit.Asserts; 11 12 public class SetsTest { 13 14 @Test 15 public void testCreate() { 16 assertTrue(Sets.newHashSet(1, 2, 3).contains(2)); 17 } 18 19 @Test 20 public void testCreateFromIterator() { 21 assertTrue(Sets.newHashSet(Sets.newHashSet(1, 2, 3).iterator()).contains(2)); 22 } 23 24 @Test 25 public void testCreateFromIterable() { 26 assertTrue(Sets.newHashSet(Sets.newHashSet(1, 2, 3)).contains(2)); 27 } 28 29 @Test 30 public void testCreateFromNonCollectionIterable() { 31 assertTrue(Sets.newHashSet(new Iterable<Integer>() { 32 33 @Override 34 public Iterator<Integer> iterator() { 35 return Sets.newHashSet(1, 2).iterator(); 36 } 37 }).contains(2)); 38 } 39 40 @Test 41 public void testIsUtilityClass() { 42 Asserts.assertIsUtilityClass(Sets.class); 43 } 44 45 @Test 46 public void testCheckNonNegativeZero() { 47 Sets.checkNonnegative(0, "boo"); 48 } 49 50 @Test 51 public void testCheckNonNegativePositive() { 52 Sets.checkNonnegative(1, "boo"); 53 } 54 55 @Test(expected = IllegalArgumentException.class) 56 public void testCheckNonNegativeNegative() { 57 Sets.checkNonnegative(-1, "boo"); 58 } 59 60 @Test 61 public void testCapacityForOne() { 62 assertEquals(2, Sets.capacity(1)); 63 } 64 65 @Test 66 public void testCapacityForLarge() { 67 assertEquals(Integer.MAX_VALUE, Sets.capacity(Sets.MAX_POWER_OF_TWO + 1)); 68 } 69 }