Как вы издеваетесь над методом UpdateOneAsync, возвращающим bool, используя NSubstitute и xUnit?

#asp.net-core #xunit #nsubstitute

Вопрос:

Это метод, который мне нужно протестировать, и он всегда будет возвращать значение false

 private async Task<bool> UpdateUsername(string newName, User user)
        {

                var update = Builders<User>.Update.Set(entity => entity.Name, newName);

                await repository.UpdateOneAsync(entity => entity.Id == user.Id, update);
            }
            catch (Exception exception)
            {
                return false;
            }
            return true;
        }
 

Было бы достаточно сделать что-то подобное

 repository.UpdateOneAsync(Arg.Any<User>(), updateTerms).Returns(false);
 

И что я должен передать в параметры обновления?

Комментарии:

1. Вы можете сослаться на примеры в этой статье, которые могут быть вам полезны: nsubstitute.github.io/help/getting-started

2. можете ли вы указать тип вывода Builders<Пользователь>.Update. Установить метод?