Задать вопрос
@Nikita07

Почему значение равно null?

Всем привет, вопрос в следующем, есть следующий фрагмент unit-теста
// Arrange
            var mock1 = new Mock<IRtbService>();
            mock1
                .Setup(a => a.GetAuctionResult(rtb_partners, auctionModel))
                .ReturnsAsync("VAST");


По сути он должен вернуть строку VAST, но при отладке он возращает null, с чем может быть связанна данная "особенность"?

P.S
Вот метод GetAuctionResult():
public Task GetAuctionResult(IEnumerable rtb_partners, AuctionModel auctionModel);

Вот скриншот получения null
60f017342caf8847848527.png
  • Вопрос задан
  • 78 просмотров
Подписаться 1 Средний Комментировать
Помогут разобраться в теме Все курсы
  • Stepik
    Программирование на C# 5.0
    1 неделя
    Далее
  • Ulearn.me
    Проектирование на языке C#
    1 неделя
    Далее
  • Алгоритмика
    Разработка игр на Unity для детей 12–16 лет
    1 неделя
    Далее
Решения вопроса 1
sarapinit
@sarapinit Куратор тега C#
Точу водой камень
Скорее всего потому что rtb_partners и auctionModel не совпадают с тем что в него передается.
Как я понимаю, сравнение происходит по ссылке и мок возвращает null.
Если вам не особо важно что туда придет, то можно сконфигурировать безусловно:
var mock1 = new Mock<IRtbService>();
mock1
    .Setup(a => a.GetAuctionResult(It.IsAny<IEnumerable>(), It.IsAny<AuctionModel>()))
    .ReturnsAsync("VAST");
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы