Требуется аннотация на параметры метода можно проверить? - PullRequest
0 голосов
/ 01 апреля 2019

Аннотация [Обязательно] работает нормально во время работы, но могу ли я проверить ее с помощью модульных тестов?

Я попытался отладить его, но, похоже, тест только начинается, из-за прямого вызова метода.

Тест:

var result = (StatusCodeResult)await this.Sut.Values(1, null);

result.StatusCode.Should().Be(HttpStatusCode.BadRequest);

Метод:

public async Task<IActionResult> Values(int identifier, [Required] SomeType query)
{
    var readResult= await this.resultProvider.GetValues(identifier, query);
    if (readResult.Failed)
    {
        var error = new ErrorRepresentation(resultReadResult.Message);

        return this.StatusCode(error.StatusCode);
    }

    return this.Ok(readResult.Value);
}

Я должен получить http-ответ с кодом 400, но я получу 404. Не найдено.

1 Ответ

0 голосов
/ 01 апреля 2019

Я предполагаю, что он ищет альтернативный метод, у которого второй параметр необязательный, но не находит его, то есть 404.

Это проблема маршрутизации, попробуйте добавить собственный маршрут для вашего теста.

...