Übergabe eines Loggers im Konstruktor wird nicht übernommen
Zusammenfassung
Wird im Konstruktor ein Logger übergeben, so wird dieser nicht korrekt gesetzt.
STR
Angehängten Test ausführen.
Ist
Der Logger wird nicht verwendet.
Soll
Der Logger wird verwendet.
Testfall
/**
* Expect Logger to be customizable
*/
function testLoggerCustomization() {
$cloSleepOneSecond = function() {
sleep(1);
};
$boolCustomLoggerTriggered = false;
$cloCustomLogger = function ($strOutput) use (&$boolCustomLoggerTriggered) {
$boolCustomLoggerTriggered = true;
};
$objSlottedForkMachine = new \SFM\SlottedForkMachine(cloLogger: $cloCustomLogger);
$objSlottedForkMachine->createSlot("alpha", 1);
$objSlottedForkMachine->queueIntoSlot("alpha", $cloSleepOneSecond);
$objSlottedForkMachine->run();
$objSlottedForkMachine->waitUntilAllForksFinished();
assertTrue($boolCustomLoggerTriggered);
}
Weitere Anmerkungen
Beim SASFM kann der Logger über eine separate Methode gesetzt werden. Das ist expliziter – Eventuell das Verhalten so einfach übernehmen, um über beide Pakete einheitlich zu bleiben?
Edited by Max