2009-03-09 11 views
1

Ich schreibe einige Komponententests in Kakao für eine datengesteuerte Anwendung.Ändern von Konstanten für Komponententests

Ich habe eine Konstanten-Datei-Header, die einen ganzen Haufen von Variablen, einschließlich Pfade zu den Datenbanken usw.

Ich frage mich, ob es möglich ist, erhalten alle Klassen definieren einen anderen Satz von Konstanten zu verwenden, das würde Link zu einer Testversion der Datenbank usw.

Ich habe versucht, die Konstanten neu zu definieren, aber es wird global nicht wirksam.

Antwort

3

Sie könnten stattdessen eine Struktur haben, die alle verwendeten Konstanten enthält und sie an die Konstruktoren Ihrer Objekte übergeben. Normalerweise ist diese Struktur die Werte, die zum Ausführen erforderlich sind, aber wenn Sie testen, übergeben Sie stattdessen eine Struktur mit den initialisierten Feldern, um die Parameter zu testen. Ich weiß absolut nichts über objektive C, aber ich bin nicht sicher, ob dies für Sie möglich ist.

0

Sie können alle Ihre Konstanten in ein Singleton-Objekt einfügen, das schreibgeschützte Eigenschaften für die Konstanten hat. Dann können Sie das Konstantenobjekt vortäuschen und die Konstanten ändern.