Итак, я пишу кеш-систему (не слишком сложную, но с очень хорошей семантикой) с ttl (время жизни) для элементов.
Конечно, ttl должен быть модульно протестирован, но поскольку нельзя внедрить новую реализацию "IDateTime" или "ITimeSpan" в C # (потому что такого нет), как бы вы поступили об этом? *
Сначала напишите новый компонент "IDateTimeProvider" и "DateTimeProvider", какой из них затем можно макетировать?
Не является ли переопределение частей библиотеки времени выполнения .NET ... излишним?
Редактировать: Спасибо всем за ваши удивительные ответы! Теперь я точно знаю, что собираюсь делать!