Moin,
Nachdem ich mich ein wenig weiter mit dem Thema beschäftigt habe, wollte ich auch mal schauen wie leicht ich einen meiner bestehenden Tests migrieren kann.
So ca. 4 Zeilen Code musste ich anpassen und dann lief der Test schon, was erfreulich ist
Allerdings haben die Ergebnisse nicht gepasst und ich kam ins grübeln, worin der Unterschied besteht.
Am Ende ist mir dann aufgefallen, dass es ein Problem des Zeitpunktes ist zu dem der Test läuft.
Er läuft ja direkt nachdem die Initialisierung abgeschlossen ist. Beim UnitTest Modul hatte ich mit einer Verzögerung gearbeitet.
Vermutlich habe ich hier in der Vergangenheit technische Schulden aufgebaut. Ich weiß auch nicht mehr exakt wieso, aber irgendwie musste ich sicher gehen, Attribute auswerten zu können um die passende Konfiguration herstellen zu können. Das ist im Define ja nicht sicher gestellt. Wie soll das auch gehen.
Meine Definition ist nach Abschluss vom define somit nicht voll einsatzbereit. Das ganze dauert dann noch mal etwa 1 Sekunde, über einen internalTimer, bis alles abgearbeitet ist.
Keine top Lösung, funktioniert aber bislang.
Nun viel mir ein, dass ich in Rudis Beispiel etwas gesehen hatte, wie ein Test verzögert wird:
https://svn.fhem.de/trac/browser/trunk/fhem/t/FHEM/00_MQTT2_SERVER/01_autocreate.tMir erschien das zunächst auch logisch.
Es funktioniert aber bei mir nicht, in dem der eigentliche Test über einen Internal Timer verzögert wird. :-(
Entweder liegt es an mir oder es kann nicht funktionieren. Funktioniert denn dieses Vorgehen bei dir Rudi? Ich habe kein mqtt Client installiert und wenn ich mir das überlege, dann wird an prove schon ein Ergebnis geliefert, bevor der internal Timer laufen konnte, weil das Modul ja am Ende ankommt bevor der Timer startet.
Grüße Sidey
Gesendet von meinem Moto Z (2) mit Tapatalk