assertEquals(new Gson().toJson(Lists.newArrayList(slave1.getBrowserInfo())),
handler.listBrowsers());
}
public void testBrowserPanic() throws Exception {
CapturedBrowsers capturedBrowsers = new CapturedBrowsers(new BrowserIdStrategy(new MockTime(0)));
BrowserInfo browserInfo = new BrowserInfo();
browserInfo.setId(1L);
CharArrayWriter out = new CharArrayWriter();
PrintWriter writer = new PrintWriter(out);
IMocksControl control = EasyMock.createControl();
HttpServletResponse response = control.createMock(HttpServletResponse.class);
response.setCharacterEncoding("UTF-8");
expect(response.getWriter()).andReturn(writer).anyTimes();
HttpServletRequest request = control.createMock(HttpServletRequest.class);
expect(request.getParameter("listBrowsers")).andReturn(null);
expect(request.getParameter("nextBrowserId")).andReturn(null);
expect(request.getParameter("id")).andReturn(browserInfo.getId().toString());
control.replay();
SlaveBrowser slave = new SlaveBrowser(new Time() {
int i = 0;
public Instant now() {
i += 100;
return new Instant(i);
}
}, "1", browserInfo, 0, null, CaptureHandler.QUIRKS, RunnerType.CLIENT, BrowserState.CAPTURED, new Instant(0));
slave.addResponse(new Response(ResponseType.LOG.name(), "", browserInfo, "", -1), true);
capturedBrowsers.addSlave(slave);
Gson gson = new Gson();
CommandGetHandler handler = new CommandGetHandler(request, response, gson, capturedBrowsers);
handler.handleIt();
assertEquals(ResponseType.BROWSER_PANIC, gson.fromJson(out.toString(), StreamMessage.class)
.getResponse().getResponseType());