@Test public void placeManagerUserCallUpdateHistoryWhenRevealingPlace() { // Given doAnswer( invocation -> { Object[] args = invocation.getArguments(); deferredCommandManager.addCommand( () -> placeManager.updateHistory( new PlaceRequest.Builder() .nameToken("dummyNameToken") .with("dummyParam", "dummyValue") .build(), true)); ((PlaceRequestInternalEvent) args[0]).setHandled(); return null; }) .when(eventBus) .fireEventFromSource(isA(PlaceRequestInternalEvent.class), eq(placeManager)); // When placeManager.revealPlace(new PlaceRequest.Builder().nameToken("dummyNameToken").build()); deferredCommandManager.pump(); // Then PlaceRequest placeRequest = placeManager.getCurrentPlaceRequest(); assertEquals("dummyNameToken", placeRequest.getNameToken()); assertEquals(1, placeRequest.getParameterNames().size()); assertEquals("dummyValue", placeRequest.getParameter("dummyParam", null)); verify(gwtWindowMethods).setBrowserHistoryToken(any(String.class), eq(false)); }