Модульный тест C# NSubstitute Невозможно установить значение в ObjectCache

Я не могу вставить запись кэша в ObjectCache с помощью Set в моих модульных тестах.

var objectCache = Substitute.For<ObjectCache>();
objectCache.Set("TestKey", object, Arg.Any<DateTimeOffset>());

Когда я вступаю в свой код

var cachedData = _objectCache.Get("TestKey");
// cachedData is null

Я использую Nsubstitute для насмешливых библиотек.

Кто-нибудь знает, как преодолеть эту проблему?

1 ответ

Решение

Вам нужно будет настроить макет для Get метод. Смотрите пример для return метод в NSubstitute документах.

Что-то вроде...

var objectCache = Substitute.For<ObjectCache>();
objectCache.Get("TestKey").Returns(...what you want it to return);
Другие вопросы по тегам