コード例 #1
0
        public async Task ReturnsExpectedPushResultForStatusCode(int responseCode, int expectedPushResult)
        {
            using var agent = new ErroringTelemetryAgent(responseCode: responseCode, port: TcpPortProvider.GetOpenPort());
            var telemetryUri = new Uri($"http://localhost:{agent.Port}");

            // Uses framework specific transport
            var transport = new TelemetryTransportFactory(telemetryUri, apiKey: null).Create();
            var data      = GetSampleData();

            var result = await transport.PushTelemetry(data);

            result.Should().Be((TelemetryPushResult)expectedPushResult);
        }
コード例 #2
0
        public async Task WhenNoListener_ReturnsFatalError()
        {
            // Nothing listening on this port (currently)
            var port         = TcpPortProvider.GetOpenPort();
            var telemetryUri = new Uri($"http://localhost:{port}");

            // Uses framework specific transport
            var transport = new TelemetryTransportFactory(telemetryUri, apiKey: null).Create();
            var data      = GetSampleData();

            var result = await transport.PushTelemetry(data);

            result.Should().Be(TelemetryPushResult.FatalError);
        }
コード例 #3
0
        public async Task CanSendTelemetry()
        {
            using var agent = new MockTelemetryAgent <TelemetryData>(TcpPortProvider.GetOpenPort());
            var telemetryUri = new Uri($"http://localhost:{agent.Port}");

            // Uses framework specific transport
            var transport = new TelemetryTransportFactory(telemetryUri, apiKey: null).Create();
            var data      = GetSampleData();

            var result = await transport.PushTelemetry(data);

            result.Should().Be(TelemetryPushResult.Success);
            var received = agent.WaitForLatestTelemetry(x => x.SeqId == data.SeqId);

            received.Should().NotBeNull();

            // check some basic values
            received.SeqId.Should().Be(data.SeqId);
            received.Application.Env.Should().Be(data.Application.Env);
            received.Application.ServiceName.Should().Be(data.Application.ServiceName);
        }