public void GlobalSetup() { ResourceLeakDetector.Level = ResourceLeakDetector.DetectionLevel.Disabled; System.Environment.SetEnvironmentVariable("io.netty.buffer.checkAccessible", "false"); System.Environment.SetEnvironmentVariable("io.netty.buffer.checkBounds", "false"); this.uri = "http://localhost?eventType=CRITICAL&from=0&to=1497437160327&limit=10&offset=0"; this.encoder = new HttpRequestEncoder(); }
public void EmptydBufferShouldPassThrough() { var encoder = new HttpRequestEncoder(); var channel = new EmbeddedChannel(encoder); IByteBuffer buffer = Unpooled.Buffer(); channel.WriteAndFlushAsync(buffer).Wait(); channel.FinishAndReleaseAll(); Assert.Equal(0, buffer.ReferenceCount); }
public void QueryStringPath() { var encoder = new HttpRequestEncoder(); IByteBuffer buffer = Unpooled.Buffer(64); encoder.EncodeInitialLine( buffer, new DefaultHttpRequest(HttpVersion.Http11, HttpMethod.Get, "/?url=http://example.com")); string req = buffer.ToString(Encoding.ASCII); Assert.Equal("GET /?url=http://example.com HTTP/1.1\r\n", req); }
public void EmptyAbsPath() { var encoder = new HttpRequestEncoder(); IByteBuffer buffer = Unpooled.Buffer(64); encoder.EncodeInitialLine( buffer, new DefaultHttpRequest(HttpVersion.Http11, HttpMethod.Get, "")); string req = buffer.ToString(Encoding.ASCII); Assert.Equal("GET / HTTP/1.1\r\n", req); }
public void EmptyReleasedBufferShouldNotWriteEmptyBufferToChannel() { var encoder = new HttpRequestEncoder(); var channel = new EmbeddedChannel(encoder); IByteBuffer buf = Unpooled.Buffer(); buf.Release(); var exception = Assert.Throws <AggregateException>(() => channel.WriteAndFlushAsync(buf).Wait()); Assert.Single(exception.InnerExceptions); Assert.IsType <EncoderException>(exception.InnerExceptions[0]); Assert.IsType <IllegalReferenceCountException>(exception.InnerExceptions[0].InnerException); channel.FinishAndReleaseAll(); }
public void UriWithoutPath2() { var encoder = new HttpRequestEncoder(); IByteBuffer buffer = Unpooled.Buffer(64); encoder.EncodeInitialLine( buffer, new DefaultHttpRequest( HttpVersion.Http11, HttpMethod.Get, "http://localhost:9999?p1=v1")); string req = buffer.ToString(Encoding.ASCII); Assert.Equal("GET http://localhost:9999/?p1=v1 HTTP/1.1\r\n", req); }
private void EmptyContent(bool chunked, bool trailers) { HttpRequestEncoder encoder = new HttpRequestEncoder(); EmbeddedChannel channel = new EmbeddedChannel(encoder); var request = new DefaultHttpRequest(HttpVersion.Http11, HttpMethod.Post, "/"); if (chunked) { HttpUtil.SetTransferEncodingChunked(request, true); } Assert.True(channel.WriteOutbound(request)); var contentBuffer = Unpooled.Buffer(); Assert.True(channel.WriteOutbound(new DefaultHttpContent(contentBuffer))); var lastContentBuffer = Unpooled.Buffer(); var last = new DefaultLastHttpContent(lastContentBuffer); if (trailers) { last.TrailingHeaders.Set((AsciiString)"X-Netty-Test", "true"); } Assert.True(channel.WriteOutbound(last)); // Ensure we only produce ByteBuf instances. var head = channel.ReadOutbound <IByteBuffer>(); Assert.True(head.Release()); var content = channel.ReadOutbound <IByteBuffer>(); content.Release(); var lastContent = channel.ReadOutbound <IByteBuffer>(); lastContent.Release(); Assert.False(channel.Finish()); }
public void GlobalSetup() { ResourceLeakDetector.Level = ResourceLeakDetector.DetectionLevel.Disabled; this.uri = "http://localhost?eventType=CRITICAL&from=0&to=1497437160327&limit=10&offset=0"; this.encoder = new HttpRequestEncoder(); }