public void testDecode001() throws IOException { CashKyoroFile base = new CashKyoroFile(512); base.addChunk("GET /announce HTTP/1.1\r\n\r\n".getBytes()); MarkableFileReader reader = new MarkableFileReader(base, 512); HttpRequest uri = HttpRequest.decode(reader); HttpRequestLine line = uri.getLine(); assertEquals("GET", line.getMethod()); assertEquals("/announce", HttpObject.createEncode(line.getRequestURI())); assertEquals("HTTP/1.1", line.getHttpVersion()); assertEquals(0, uri.getHeader().size()); }
public void testDecode002() throws IOException { CashKyoroFile base = new CashKyoroFile(512); String inputUrl = "GET /announce HTTP/1.1\r\n" + "Accept-encoding: gzip\r\n" + "Host: 127.0.0.1:6969\r\n" + "User-agent: BitTorrent/4.0.2\r\n" + "\r\n"; base.addChunk(inputUrl.getBytes()); MarkableFileReader reader = new MarkableFileReader(base, 512); HttpRequest uri = HttpRequest.decode(reader); HttpRequestLine line = uri.getLine(); assertEquals("GET", line.getMethod()); assertEquals("/announce", HttpObject.createEncode(line.getRequestURI())); assertEquals("HTTP/1.1", line.getHttpVersion()); assertEquals(3, uri.getHeader().size()); assertEquals("gzip", uri.getHeader().get(0).getValue()); assertEquals("127.0.0.1:6969", uri.getHeader().get(1).getValue()); assertEquals("BitTorrent/4.0.2", uri.getHeader().get(2).getValue()); assertEquals("Accept-encoding", uri.getHeader().get(0).getKey()); assertEquals("Host", uri.getHeader().get(1).getKey()); assertEquals("User-agent", uri.getHeader().get(2).getKey()); }