import java.util.HashMap; import java.util.Map; /******************************************************************************* * Testovací třída PersonMapTest slouží ke komplexnímu otestování * rozhraní Map, třídy HashMap * * @author Tomáš Pitner * @version 1.00, 10.8.2005 */ public class PersonMapTest extends junit.framework.TestCase { private Map personAccountMap; private Person me; private Person you; private Person he; private Account myAccount; private Account yourAccount; /*************************************************************************** * Vytvoří test se zadaným názvem. * * @param název Název konstruovaného testu */ public PersonMapTest(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() { personAccountMap = new HashMap(); me = new Person("Jan Novak", 30); you = new Person("Pavel Horak", 20); he = new Person("Libor Polak", 55); myAccount = new Account(100); yourAccount = new Account(5000); personAccountMap.put(me, myAccount); personAccountMap.put(you, yourAccount); } /*************************************************************************** * Úklid po testu - tato metoda se spustí po vykonání každého testu. */ protected void tearDown() { } //== VLASTNÍ TESTY ============================================================= /*************************************************************************** * Je můj účet v mapě pod mým klíčem? */ public void testMyAccountFound() { assertEquals("My Account should be in the Map.", myAccount, personAccountMap.get(me)); } /*************************************************************************** * Jeho účet v mapě není? */ public void testHisAccountNotFound() { assertNull("His Account should not be in the Map.", personAccountMap.get(he)); } }