FanatPHP, да их не пишут прямо в коде, даже в Битрикс есть конфиг где прописываются параметры соединения. НО т.к. это кастомный класс соединения (не понятно чем их стандартное не устроило), то нет гарантий что dsn берется из конфига.
phonkanytiu, с другой с какой? Вот у меня открыта эта страница, мне надо получить инфу о странице с гугла? Или откуда? По AJAX подгрузить страницу и распарсить ее через регулярку? Воткнуть на страницу iframe и через contentWindow обратиться к ней?
JastaFly, эээ а кто сказал что это костыль? Костыль это если бы вы написали компонент который через рефлексию подменяет свойство класса.
А по поводу "простое решение":
1. отнаследовались/скопировали компонент
2. переопределили метод
3. PROFIT
Ни костылей, ни сложной здесь не вижу. Вижу только лень :)
Но в таком случае это только плодит ненужный класс, который будет нужен только для тестирования, но будет создан не в папке tests
Для начала: почему не в папке тест? Для продолжения можно создать анонимный класс внутри теста. Моки создаются на лету, а этот класс у вас будет под конкретный тест (может хоть в файле теста его создать), принциальной разницы с моком (который повторю на лету строится) не будет.
Для продолжения: "нужен только для тестирования", а простите моки для чего нужны?