import java.util.Comparator; import java.util.Iterator; import java.util.TreeSet; import java.util.SortedSet; /******************************************************************************* * Testovací třída PersonSortedSetTest slouží ke komplexnímu otestování * rozhraní SortedSet, třídy TreeSet * * @author Tomáš Pitner * @version 1.00, 10.8.2005 */ public class PersonSortedSetTest extends junit.framework.TestCase { private Comparator nameComparator; private SortedSet personAccountSortedSet; private Person me; private Person you; private Person he; /*************************************************************************** * Vytvoří test se zadaným názvem. * * @param název Název konstruovaného testu */ public PersonSortedSetTest(String nazev) { super( nazev ); } //== PŘÍPRAVA A ÚKLID PŘÍPRAVKU =============================================== /*************************************************************************** * Vytvoření přípravku (fixture), tj. sady objektů, s nimiž budou všechny * testy pracovat a která se proto vytvoří před spuštěním každého testu. */ protected void setUp() { nameComparator = new PersonNameComparator(); personAccountSortedSet = new TreeSet(nameComparator); me = new Person("Jan Novak", 30); you = new Person("Pavel Horak", 20); he = new Person("Libor Polak", 55); personAccountSortedSet.add(me); personAccountSortedSet.add(you); personAccountSortedSet.add(he); } /*************************************************************************** * Úklid po testu - tato metoda se spustí po vykonání každého testu. */ protected void tearDown() { } //== VLASTNÍ TESTY ============================================================= /*************************************************************************** * Je pořadí osob v množině OK? */ public void testPersonOrder() { Iterator ip = personAccountSortedSet.iterator(); assertEquals("1. Person should be me.", me, ip.next()); assertEquals("2. Person should be he.", he, ip.next()); assertEquals("3. Person should be you.", you, ip.next()); } }