Get MOQ для возврата последовательных символов из строки
Привет, гуру.
Я уверен, что многие из вас думали: "слава богу, что этот парень исчез", но я здесь, чтобы разочаровать вас.
На этот раз мой вопрос об использовании Moq с C# для создания макета, который будет возвращать каждую букву предоставленной строки каждый раз, когда она вызывается. Упрощенный пример того, что я хочу, это:
var sourceText = "abcdefg"; var myMock = new Mock<IThingy>(): myMock.Setup((mm) => mm.NextChar()).Returns(() => { =some code= }); var result = myMock.NextChar(); // should return "a"; result = myMock.NextChar(); // should return "b"; ...
Я знаю, что могу сделать это с помощью Последовательность(), но это включает в себя жесткое кодирование возвращаемых значений, чего я не хочу делать.
Что я уже пробовал:
Я попробовал использовать доходность возврат, но уступать недопустимо в анонимном методе.
Я попытался настроить метод, который использует доходность возврат, и это будет называться =некоторый код=, но этот метод должен был бы вернуть IEnumerable<string> какие средства =некоторый код= возвращает коллекцию, а не один последовательный символ каждый раз.