예제 #1
0
        public async Task DestinationThrows_Reported()
        {
            var source      = new MemoryStream(new byte[10]);
            var destination = new ThrowStream();

            var(result, error) = await StreamCopier.CopyAsync(source, destination, CancellationToken.None);

            Assert.Equal(StreamCopyResult.OutputError, result);
            Assert.IsAssignableFrom <IOException>(error);
        }
예제 #2
0
        public async Task DestinationThrows_Reported()
        {
            var source                = new MemoryStream(new byte[10]);
            var destination           = new ThrowStream();
            var proxyTelemetryContext = new StreamCopyTelemetryContext(
                direction: "upstream",
                clusterId: "be1",
                routeId: "rt1",
                destinationId: "d1");
            var sut = new StreamCopier(_metrics, in proxyTelemetryContext);

            var(result, error) = await sut.CopyAsync(source, destination, CancellationToken.None);

            Assert.Equal(StreamCopyResult.OutputError, result);
            Assert.IsAssignableFrom <IOException>(error);
        }