Как-то слишком сложно. Не проще ли просто передать интерфейс через конструктор и вообще не использовать синглтон в коде (т.е. Dependency Injection)?Мальчик-Одуванчик wrote:Я это понял примерно так:Roy wrote:Чё-то я не очень понял. Можно поподробнее?Alexandr wrote: Очевидно, что тип сиглтона должен быть параметром шаблона
К примеру у вас есть некий класс, использующий синглтон.
Параметризуйте этот класс, так чтобы параметром этого шаблона стал синглтон.
И создайте два типа (разных класса с похожим интерфейсом) синглтонов - один для тестов, другой - имеющийся
Тот что для тестов, можно курочить и в хвост и в гриву. К примеру все его члены сделать публичными для более упрощенной
подготовки юнит-тестов.
Ну то есть синглтон используется только при инициализации, скажем, сервиса, а далее уже везде передаётся только сам обьект, полученный из синглтона.