Как подделать ScanResponse? - PullRequest
0 голосов
/ 02 июля 2019

Я пишу тестовые случаи для получения записей от Dynamodb. Dynamodb возвращает scanResponse. Я хочу подделать ScanResponse. Как это сделать?

1 Ответ

1 голос
/ 02 июля 2019

(я предполагаю, что вы используете пакет Nuget AWSSDK.DynamoDBv2)

Вы не подделываете ScanResponse; вы фальсифицируете класс AmazonDynamoDBClient (или, что лучше, интерфейс IAmazonDynamoDB; интерфейсы меньше проблем с фальсификацией), и вы настраиваете его метод ScanAsync для возврата желаемого ScanResponse.

var dynamoDb = A.Fake<IAmazonDynamoDb>();
A.CallTo(() => dynamoDb.ScanAsync(A<ScanRequest>._, A<CancellationToken>._))
    .Returns(new ScanResponse
    {
        // Define the ScanResponse you want the method to return
        ...
    });
...