• Как лучше спроектировать класс?

    dmitriylanets
    @dmitriylanets
    веб-разработчик
    да, нормальный подход из принципа SOLID (в вашем случае принцип инверсии зависимостей D). когда будите тестировать MyHelperClass вы создадите тестируемый объект максимально изолированно от других классов
    $this->object = new MyHelperClass([1, 2, 3, 4], $mosk);

    объект $mosk будет возвращать заранее подготовленный результат
    Ответ написан
    Комментировать
  • Как лучше спроектировать класс?

    AmdY
    @AmdY
    PHP и прочие вебштучки
    Создавать сервис(хелпер) напрямую это не лучший подход, инджекть его в метод-экшен. DI создаст и сам хелпер и заинджектит в него SpecificModel, и при тестировании мокать будете без проблем.
    class FooController {
        public function getIndex(\MyHelperClass $helper) {
            $helper->doWork([1, 2, 3, 4]);
        }
    }
    Ответ написан
    5 комментариев