mirror of https://github.com/dapr/dotnet-sdk.git
Merge pull request #1355 from WhitWaldo/invoke-with-extra-headers
Test: Validate method invocation with extraneous headers
This commit is contained in:
commit
8948dd836f
|
|
@ -11,6 +11,9 @@
|
|||
// limitations under the License.
|
||||
// ------------------------------------------------------------------------
|
||||
|
||||
using System.Linq;
|
||||
using System.Net.Http.Headers;
|
||||
|
||||
namespace Dapr.Client.Test
|
||||
{
|
||||
using System;
|
||||
|
|
@ -654,8 +657,34 @@ namespace Dapr.Client.Test
|
|||
var actual = await content.ReadFromJsonAsync<Widget>(this.jsonSerializerOptions);
|
||||
Assert.Equal(data.Color, actual.Color);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task InvokeMethodWithoutResponse_WithExtraneousHeaders()
|
||||
{
|
||||
await using var client = TestClient.CreateForDaprClient(c =>
|
||||
{
|
||||
c.UseGrpcEndpoint("http://localhost").UseHttpEndpoint("https://test-endpoint:3501").UseJsonSerializationOptions(this.jsonSerializerOptions);
|
||||
});
|
||||
|
||||
var req = await client.CaptureHttpRequestAsync(async DaprClient =>
|
||||
{
|
||||
var request = client.InnerClient.CreateInvokeMethodRequest(HttpMethod.Get, "test-app", "mymethod");
|
||||
request.Headers.Add("test-api-key", "test");
|
||||
request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", "abc123");
|
||||
request.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
|
||||
|
||||
await DaprClient.InvokeMethodAsync(request);
|
||||
});
|
||||
|
||||
req.Dismiss();
|
||||
|
||||
Assert.NotNull(req);
|
||||
Assert.True(req.Request.Headers.Contains("test-api-key"));
|
||||
Assert.Equal("test", req.Request.Headers.GetValues("test-api-key").First());
|
||||
Assert.True(req.Request.Headers.Contains("Authorization"));
|
||||
Assert.Equal("Bearer abc123", req.Request.Headers.GetValues("Authorization").First());
|
||||
Assert.Equal("application/json", req.Request.Headers.GetValues("Accept").First());
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task InvokeMethodWithResponseAsync_ReturnsMessageWithoutCheckingStatus()
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// ------------------------------------------------------------------------
|
||||
// ------------------------------------------------------------------------
|
||||
// Copyright 2021 The Dapr Authors
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
|
|
@ -394,7 +394,7 @@ namespace Dapr
|
|||
var task = operation(this.InnerClient);
|
||||
if (task.IsFaulted)
|
||||
{
|
||||
// If the task throws, we want to bubble that up eaglerly.
|
||||
// If the task throws, we want to bubble that up eagerly.
|
||||
await task;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue