public MemoryStream Create(byte[] bytes) { var stream = new TrackDisposeStream(bytes); this.Created.Add(stream); return(stream); }
private async Task AssertRegularResponse(bool disableDirectStreaming, int?statusCode = null) { var settings = disableDirectStreaming ? _settingsDisableDirectStream : _settings; var memoryStreamFactory = new TrackMemoryStreamFactory(); var requestData = new RequestData(HttpMethod.GET, "/", null, settings, null, memoryStreamFactory) { Node = new Node(new Uri("http://localhost:9200")) }; var stream = new TrackDisposeStream(); var response = ResponseBuilder.ToResponse <RootNodeInfoResponse>(requestData, null, statusCode, null, stream); memoryStreamFactory.Created.Count().Should().Be(disableDirectStreaming ? 1 : 0); if (disableDirectStreaming) { var memoryStream = memoryStreamFactory.Created[0]; memoryStream.IsDisposed.Should().BeTrue(); } stream.IsDisposed.Should().BeTrue(); stream = new TrackDisposeStream(); var ct = new CancellationToken(); response = await ResponseBuilder.ToResponseAsync <RootNodeInfoResponse>(requestData, null, statusCode, null, stream, cancellationToken : ct); memoryStreamFactory.Created.Count().Should().Be(disableDirectStreaming ? 2 : 0); if (disableDirectStreaming) { var memoryStream = memoryStreamFactory.Created[1]; memoryStream.IsDisposed.Should().BeTrue(); } stream.IsDisposed.Should().BeTrue(); }
public MemoryStream Create(byte[] bytes, int index, int count) { var stream = new TrackDisposeStream(bytes, index, count); Created.Add(stream); return(stream); }
public MemoryStream Create() { var stream = new TrackDisposeStream(); Created.Add(stream); return(stream); }
private async Task AssertStreamResponse(bool disableDirectStreaming, Action <ResponseBuilder <Stream> > mutate = null) { var settings = disableDirectStreaming ? _settingsDisableDirectStream : _settings; var memoryStreamFactory = new TrackMemoryStreamFactory(); var requestData = new RequestData(HttpMethod.GET, "/", null, settings, (IRequestParameters)null, memoryStreamFactory) { Node = new Node(new Uri("http://localhost:9200")) }; var responseBuilder = new ResponseBuilder <Stream>(requestData) { }; mutate?.Invoke(responseBuilder); var stream = new TrackDisposeStream(); responseBuilder.Stream = stream; var response = responseBuilder.ToResponse(); memoryStreamFactory.Created.Count().Should().Be(disableDirectStreaming ? 1 : 0); stream.IsDisposed.Should().Be(disableDirectStreaming ? true : false); stream = new TrackDisposeStream(); responseBuilder.Stream = stream; response = await responseBuilder.ToResponseAsync(); memoryStreamFactory.Created.Count().Should().Be(disableDirectStreaming ? 2 : 0); stream.IsDisposed.Should().Be(disableDirectStreaming ? true : false); }
private async Task AssertRegularResponse(bool disableDirectStreaming, Action<ResponseBuilder<RootNodeInfoResponse>> mutate = null) { var settings = disableDirectStreaming ? _settingsDisableDirectStream : _settings; var memoryStreamFactory = new TrackMemoryStreamFactory(); var requestData = new RequestData(HttpMethod.GET, "/", null, settings, null, memoryStreamFactory) { Node = new Node(new Uri("http://localhost:9200")) }; var responseBuilder = new ResponseBuilder<RootNodeInfoResponse>(requestData) { }; mutate?.Invoke(responseBuilder); var stream = new TrackDisposeStream(); responseBuilder.Stream = stream; var response = responseBuilder.ToResponse(); memoryStreamFactory.Created.Count().Should().Be(disableDirectStreaming ? 1 : 0); if (disableDirectStreaming) { var memoryStream = memoryStreamFactory.Created[0]; memoryStream.IsDisposed.Should().BeTrue(); } stream.IsDisposed.Should().BeTrue(); stream = new TrackDisposeStream(); responseBuilder.Stream = stream; response = await responseBuilder.ToResponseAsync(); memoryStreamFactory.Created.Count().Should().Be(disableDirectStreaming ? 2 : 0); if (disableDirectStreaming) { var memoryStream = memoryStreamFactory.Created[1]; memoryStream.IsDisposed.Should().BeTrue(); } stream.IsDisposed.Should().BeTrue(); }
public MemoryStream Create() { var stream = new TrackDisposeStream(); this.Created.Add(stream); return stream; }