package de.swm.gwt.client.history; import static org.easymock.EasyMock.*; import static org.junit.Assert.*; import org.junit.Test; import de.swm.gwt.client.eventbus.ICustomData; import de.swm.gwt.client.eventbus.IDispatcher; import de.swm.gwt.client.history.HistoryTokenParser; import de.swm.gwt.client.interfaces.ILocation; public class HistoryTokenParserTest { @Test public void testHistoryParser_withForward() throws Exception { IDispatcher disp = createMock(IDispatcher.class); HistoryTokenParser<PlatformEvents, PlatformEvents> toTest = new HistoryTokenParser<PlatformEvents, PlatformEvents>( disp, PlatformEvents.class, null); disp.fireEvent(eq(PlatformEvents.COMPLETE_REGISTRATION), isNull(ILocation.class), isA(ICustomData.class)); disp.fireEvent(PlatformEvents.FORWARD_TO_TARIFBERATUNG, (ILocation) null, (ICustomData) null); replay(disp); ICustomData userData = toTest .parseTokenAndFireEvents("COMPLETE_REGISTRATION=S_y_czzZNlyDRPHQdWPiAeXvHiQHrAphRJLGSBNnup0-EOL;FORWARD_TO_TARIFBERATUNG"); assertNotNull("User daten objekt erwartet", userData); assertNotNull("Forward erwartet", userData.forwardEvent()); assertEquals("S_y_czzZNlyDRPHQdWPiAeXvHiQHrAphRJLGSBNnup0-EOL", userData.userObject()); userData.forwardEvent().execute(); verify(disp); } @Test public void testHistoryParser_withForward_WittoutParames() throws Exception { IDispatcher disp = createMock(IDispatcher.class); HistoryTokenParser<PlatformEvents, PlatformEvents> toTest = new HistoryTokenParser<PlatformEvents, PlatformEvents>( disp, PlatformEvents.class, null); disp.fireEvent(eq(PlatformEvents.COMPLETE_REGISTRATION), isNull(ILocation.class), isA(ICustomData.class)); disp.fireEvent(PlatformEvents.FORWARD_TO_TARIFBERATUNG, (ILocation) null, (ICustomData) null); replay(disp); ICustomData userData = toTest.parseTokenAndFireEvents("COMPLETE_REGISTRATION;FORWARD_TO_TARIFBERATUNG"); assertNotNull("User daten objekt erwartet", userData); assertNotNull("Forward erwartet", userData.forwardEvent()); assertNull(userData.userObject()); userData.forwardEvent().execute(); verify(disp); } @Test public void testHistoryParser_withoutForward() throws Exception { IDispatcher disp = createMock(IDispatcher.class); HistoryTokenParser<PlatformEvents, PlatformEvents> toTest = new HistoryTokenParser<PlatformEvents, PlatformEvents>( disp, PlatformEvents.class, null); disp.fireEvent(eq(PlatformEvents.COMPLETE_REGISTRATION), isNull(ILocation.class), isA(ICustomData.class)); replay(disp); ICustomData userData = toTest .parseTokenAndFireEvents("COMPLETE_REGISTRATION=S_y_czzZNlyDRPHQdWPiAeXvHiQHrAphRJLGSBNnup0-EOL"); assertNotNull("User daten objekt erwartet", userData); assertEquals("S_y_czzZNlyDRPHQdWPiAeXvHiQHrAphRJLGSBNnup0-EOL", userData.userObject()); assertNull("Kein Forward erwartet", userData.forwardEvent()); verify(disp); } }