SE251Ex:Generic Pair TestPair
Copy and paste the code below.
import junit.framework.TestCase; public class TestPair extends TestCase { public void testConstruction() { Pair<String, Integer> pair = new Pair<String, Integer>("Hello",100); assertEquals("<Hello, 100>", pair.toString()); } public void testGet() { Pair<Integer, String> pair = new Pair<Integer, String>(200,"Yen"); assertEquals(new Integer(200), pair.getFirst()); assertEquals("Yen", pair.getSecond()); } public void testSet() { Pair<String, String> pair = new Pair<String, String>(null,null); pair.setFirst("Firstie"); pair.setSecond("Secondie"); assertEquals("<Firstie, Secondie>", pair.toString()); } public void testHashCode() { Object o1 = new Object(); Object o2 = new Object(); Pair<Object, Object> pair = new Pair<Object, Object>(o1, o2); assertEquals(o1.hashCode() + o2.hashCode(), pair.hashCode()); } public void testEquals() { Pair<String, Integer> pair1 = new Pair<String, Integer>("Yoyo", -20); Pair<String, Integer> pair2 = new Pair<String, Integer>("Yoyo", -20); assertTrue(pair1.equals(pair2)); Object o1 = new Object(); Object o2 = new Object(); Object o3 = new Object(); Pair<Object, Object> pair3 = new Pair<Object, Object>(o1, o2); Pair<Object, Object> pair4 = new Pair<Object, Object>(o1, o2); assertTrue(pair3.equals(pair4)); Pair<Object, Object> pair5 = new Pair<Object, Object>(o1, o2); Pair<Object, Object> pair6 = new Pair<Object, Object>(o1, o3); assertFalse(pair5.equals(pair6)); } }