Path: csiph.com!news.mixmin.net!newsreader4.netcologne.de!news.netcologne.de!.POSTED.xdsl-213-196-251-192.netcologne.de!not-for-mail From: Patrick Roemer Newsgroups: de.comp.lang.java Subject: =?UTF-8?Q?Re:_Mocking_von_Dateien_in_privaten_Methoden_m=c3=b6glich?= =?UTF-8?Q?=3f?= Date: Sun, 10 Sep 2017 15:03:44 +0200 Organization: news.netcologne.de Distribution: world Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Date: Sun, 10 Sep 2017 13:03:44 +0000 (UTC) Injection-Info: newsreader4.netcologne.de; posting-host="xdsl-213-196-251-192.netcologne.de:213.196.251.192"; logging-data="16700"; mail-complaints-to="abuse@netcologne.de" User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.24) Gecko/20100411 Thunderbird/2.0.0.24 Mnenhy/0.7.6.0 In-Reply-To: Content-Language: en-US Xref: csiph.com de.comp.lang.java:13136 Responding to Christian H. Kuhn: >> Gib den Pfad zum >> Datenverzeichnis einfach als Konstruktor- oder Methodenparameter rein >> und fertig. > > Hm. Wenn, dann kommt er in die Ini-Datei, in der auch die Zugangsdaten > für die Datenbank liegen. Mal sehen. Es ist (für diese Diskussion) wumpe, wo der Wert "oben in main", wo die Komponenten zusammengetackert werden, herkommt. Relevant ist, dass QFdsbImporter nicht auf fest verdrahteten globalen Zustand zugreift, sondern dass diese Informationen im Konstruktor oder im Methodenaufruf reingereicht werden sollten. Globaler Zustand via Singleton ist ein klassisches Designproblem, und das manifestiert sich u.a. in Schwierigkeiten beim Testen der Komponente in Isolation. Viele Grüße, Patrick