AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Unit testen von Timer gesteuerem Code

Ein Thema von TurboMagic · begonnen am 15. Feb 2021 · letzter Beitrag vom 18. Feb 2021
 
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
3.045 Beiträge
 
Delphi 12 Athens
 
#3

AW: Unit testen von Timer gesteuerem Code

  Alt 15. Feb 2021, 15:51
Danke für den Tipp. Hab' mir jetzt was interface mäßiges gebastelt, habe aber aber
noch ein Problem gefunden, dass ich jetzt umschifft habe aber noch nicht verstehe warum
es aufgetreten ist:

Das Interface ist ja ein TInterfacedObject und damit referenzgezählt.
Es wird auch nur eine Interface Referenz erzeugt die von der Unit Test Klasse und von
der zu testenden Klasse benutzt wird (Constructor Injection).

Im TInterfacedObject wird eine Logging Klasse von mir über ein globales Singleton genutzt und
im Destructor dieser Klasse noch eine Logmeldung abgesetzt.

Wenn ich die Interface Referenz nicht im TearDown der UnitTest Klasse auf nil setze, dann kommt
das Finalization der Log-Klassen Unit mit Freigabe des Log-Objektes vor der Freigabe des
Interfaces! Darin wird dann natürlich auf das Log Objekt zugegriffen welches inzwischen nil ist,
da die Freigabe mittels FreeAndNil erfolgte...

Warum in dem Fall diese ungewöhnliche Reihenfolge der Aufrufe?
Mit dem expliziten auf Nil setzen funktioniert es ja, möchte aber den Grund verstehen.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:22 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz