1 package org.incava.util; 2 3 import java.awt.Point ; 4 import java.io.*; 5 import java.util.*; 6 import junit.framework.TestCase; 7 8 9 public class TestCollect extends TestCase 10 { 11 public TestCollect(String name) 12 { 13 super(name); 14 } 15 16 public void test() 17 { 18 List list = new ArrayList(); 19 list.add("one"); 20 list.add("two"); 21 list.add("three"); 22 list.add("four"); 23 24 List collected = new Collect(list) { 25 public boolean where(Object obj) { 26 return ((String )obj).indexOf('o') != -1; 27 } 28 }; 29 assertEquals(3, collected.size()); 30 assertEquals("one", (String )collected.get(0)); 31 assertEquals("two", (String )collected.get(1)); 32 assertEquals("four", (String )collected.get(2)); 33 } 34 35 public void testBlock() 36 { 37 List list = new ArrayList(); 38 list.add(new Point (4, 5)); 39 list.add(new Point (2, 15)); 40 list.add(new Point (9, 11)); 41 list.add(new Point (24, 7)); 42 list.add(new Point (3, 12)); 43 44 List collected = new Collect(list) { 45 public boolean where(Object obj) { 46 return ((Point )obj).x % 2 == 0; 47 } 48 49 public Object block(Object obj) { 50 Point pt = (Point )obj; 51 return new Integer (pt.y); 52 } 53 }; 54 assertEquals(3, collected.size()); 55 assertEquals(new Integer (5), (Integer )collected.get(0)); 56 assertEquals(new Integer (15), (Integer )collected.get(1)); 57 assertEquals(new Integer (7), (Integer )collected.get(2)); 58 } 59 60 } 61 | Popular Tags |