Factory metody jako standardní servicy

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Nox
Člen | 378
+
0
-

Ahoj,
v kódu používám na několika místech createService<serviceName> a v testech jsem ale chtěl servicu mocknout

Problém je v tom, že metodou vytvořené servicy nejdou vyměnit, nepoužívá se pouze $container->factories, ale i přímo method_exists a jestli se dívám dobře, tak taková služba už je pak neměnná

Nevím jestli je to špatný nápad naládovat ty metodové factory do factories a pak pracovat jen s nimi, osobně mi to v tomto případě přijde lepší (i když by mohlo být podivné že ač jsou pak zapsané tam v kódu (a kód je statická věc), tak se neuplatní (jistá dynamičnost)…ale…)

Nebo nepoužívat metody?

Díky za názory/rady

Filip Procházka
Moderator | 4668
+
0
-

Kde jsou zapsané? V configuratoru nebo v Containeru?

Uveď příklad jak by jsi si představoval testování, co nejméně abstraktně prosím (kod, klidně i nefunkční).