Я мигрирую с. net core 2.2 на 3.1. Я делаю тестовый метод XUnit для тестирования моих контроллеров. Я успешно сделал и протестировал в net проектах ядра 2.2, но после перехода на 3.1 кажется, что он не может установить заголовок авторизации для моего запроса, поэтому я получаю UnAuthorized из моего приложения.
это мой код:
[Fact]
public async void InvalidId_UnSuccessFull_GetById()
{
// Arrange
var httpClient = new HttpClient();
var token = await GetAdminAccessToken(); // Sends a login request and fetch a valid token
// httpClient.DefaultRequestHeaders.Add("Authorization",$"Bearer {token}");
httpClient.DefaultRequestHeaders.Authorization=new AuthenticationHeaderValue("Authorization",$"Bearer {token}");
var id = Guid.Empty;
// Act
var response = await httpClient.GetAsync("localhost:5000/Admin/User/{id}");
var message = await ExtractMessage(response);
// Assert
Assert.Contains(PersianErrorMessage.InvalidUserId, message);
Assert.Equal(HttpStatusCode.BadRequest, response.StatusCode);
}
Я отлаживал в классе httpClient до тех пор, пока метод sendAsyn c и экземпляр запроса HttpRequestMessage не имеют заголовка авторизации, который я установил выше! Что не так с моим кодом?