Вы отличаете разницу между юнит тестированием и функциональным тестирование.
да.
Представьте себе что вы не в курсе что этот код делает. Просто тужно убедится что этот код рабатоет правильно. Что-то скачивает и что-то сохраняет куда-то. Представьте себе что скачивает он какие-то строки, а сохраняет скажем куда-то на другой сайт.
бред.
программист всегда в курсе, что делает код,
который он пишет, или использует.
можно быть не в курсе деталей реализации стороннего механизма.
но нельзя быть не в курсе его интерфейса (апи библиотеки, если угодно).
если программист написал:
значит он в курсе, что делает функция foo,
что обозначают её аргументы,
и что он хочет получить в результате.
я предложил вам продемонстрировать
простейшие тесты для класса UpdateDownloadManager.
смысл которых - проиллюстрировать дизайн использования.
ничего особенного.
просто покажите на примерах,
как используется ваш класс.
но вы не предоставили ни тестов, ни намека на документацию.
не понятно, ни как использовать ваш класс,
ни для чего он вообще нужен.
вы не в состоянии ответить на простейшие вопросы.
Суть такова, что в тестах сторедж надо подменить. Все поняли?
пока вы не предоставили информацию:
зачем вообще нужен класс UpdateDownloadManager,
и как его следует использовать,
нет никакого смысла рассматривать детали его реализации,
и нет никакого смысла рассматривать
его возможное взаимодействие с другими классами.
Скаразу скажу, что такие ответы потому что на синглтонах это сделать почти не возможно.
своими бестолковыми ответами,
вы создали у меня впечатление,
что вы просто ни бум бум в теме.
я могу упростить вам задачу: пусть это будет не сингелтон.
перепишите класс UpdateDownloadManager так,
что бы это был самый обычный класс.
и покажите тестами дизайн использования.
при этом, меня не интересуют детали его реализации.
нужно только две вещи: зачем он нужен, и как им пользоваться.
я предполагаю, что вы не справитесь и с этой задачей.
потому что у вас проблема не с сингелтонами.
Как коговорят "слив засчитан".
деццкий сад.