@Test public void testUnicodeCharacters() throws Exception { response.add("\uba80\uba81\uba82\uba83"); response.closeAll(); assertSubString("\uba80\uba81\uba82\uba83", buffer.toString()); }
@Test public void testCantAddZeroLengthBytes() throws Exception { int originalLength = buffer.length(); response.add(""); assertEquals(originalLength, buffer.length()); response.closeAll(); }
@Test public void testTrailingHeaders() throws Exception { response.closeChunks(); buffer = new StringBuffer(); response.addTrailingHeader("Some-Header", "someValue"); assertEquals("Some-Header: someValue\r\n", buffer.toString()); response.closeTrailer(); response.close(); assertTrue(closed); }
@Test public void xmlHeaders() throws Exception { response = new ChunkedResponse("xml"); response.readyToSend(this); assertTrue(response.isReadyToSend()); assertTrue(response.isReadyToSend()); String text = buffer.toString(); assertHasRegexp("Transfer-Encoding: chunked", text); assertTrue(text.startsWith("HTTP/1.1 200 OK\r\n")); assertHasRegexp("Content-Type: text/xml", text); }
@Test public void testClosingInSteps() throws Exception { assertFalse(closed); buffer = new StringBuffer(); response.closeChunks(); assertEquals("0\r\n", buffer.toString()); assertFalse(closed); buffer = new StringBuffer(); response.closeTrailer(); assertEquals("\r\n", buffer.toString()); assertFalse(closed); response.close(); assertTrue(closed); }
@Before public void setUp() throws Exception { buffer = new StringBuffer(); response = new ChunkedResponse("html"); response.readyToSend(this); }
@Test public void testOneChunk() throws Exception { buffer = new StringBuffer(); response.add("some more text"); String text = buffer.toString(); assertEquals("e\r\nsome more text\r\n", text); }
@Test public void testSimpleClosing() throws Exception { assertFalse(closed); buffer = new StringBuffer(); response.closeAll(); String text = buffer.toString(); assertEquals("0\r\n\r\n", text); assertTrue(closed); }
@Test public void testTwoChunks() throws Exception { buffer = new StringBuffer(); response.add("one"); response.add("two"); String text = buffer.toString(); assertEquals("3\r\none\r\n3\r\ntwo\r\n", text); }
@Test public void testNoNullPointerException() throws Exception { String s = null; try { response.add(s); } catch (Exception e) { fail("should not throw exception"); } }
@After public void tearDown() throws Exception { response.closeAll(); }
@Test public void testContentSize() throws Exception { response.add("12345"); response.closeAll(); assertEquals(5, response.getContentSize()); }