Abstraktion der Plugin Konfiguration für TDD

Ich habe eine SubShopspezifische Konfiguration pro Shop, die ich in einem Cronjob verarbeiten möchte.

$shop->registerResources();

$subConfig = Shopware()->Plugins()->Backend()->MyPlugin()->Config()

Hilft mir dabei den aktuellen Context für die Config zu setzen.

Damit meine Klassen allerdings testbar bleiben möchte ich nicht innerhalb der Klassen nicht den Container aufrufen. Ich würde hier gerne eine Abhängigkeit der Klasse übergeben über welche ich dann die Config abrufen kann. Jemand eine Idee, ob das mit Plugin Configs überhaupt möglich ist?

Danke im voraus.

 

Hi,

ich würde da einfach das Standard Config-Objekt aus dem Container injecten (heißt da einfach „config“). Darauf kannst du dann mit getByNamespace auch pluginspezifische Configs abfragen.

Alternativ kannst du auch direkt die gewünschten Config-Werte in deinen Service injecten, das finde ich am saubersten, solange die Anzahl überschaubar bleibt.

Daniel