Moved signal interfaces inside records
This commit is contained in:
@@ -24,7 +24,7 @@ type
|
||||
TTestMycDirtyFlag = class(TObject)
|
||||
private
|
||||
// Helper to create a dirty flag and optionally reset it for a clean initial state
|
||||
function CreateAndPrepareDirtyFlag(StartDirty: Boolean = True): IMycFlag;
|
||||
function CreateAndPrepareDirtyFlag(StartDirty: Boolean = True): TFlag.IFlag;
|
||||
public
|
||||
[Setup]
|
||||
procedure Setup;
|
||||
@@ -103,7 +103,7 @@ end;
|
||||
|
||||
{ TTestMycDirtyFlag }
|
||||
|
||||
function TTestMycDirtyFlag.CreateAndPrepareDirtyFlag(StartDirty: Boolean = True): IMycFlag;
|
||||
function TTestMycDirtyFlag.CreateAndPrepareDirtyFlag(StartDirty: Boolean = True): TFlag.IFlag;
|
||||
begin
|
||||
Result := TFlag.CreateFlag; // Initially dirty
|
||||
if not StartDirty then
|
||||
@@ -125,7 +125,7 @@ end;
|
||||
|
||||
procedure TTestMycDirtyFlag.TestCreate_InitialStateIsDirty;
|
||||
var
|
||||
dirtyFlag: IMycFlag;
|
||||
dirtyFlag: TFlag.IFlag;
|
||||
begin
|
||||
dirtyFlag := TFlag.CreateFlag;
|
||||
Assert.IsTrue(dirtyFlag.State.IsSet, 'Newly created dirty flag should be IsSet (dirty).');
|
||||
@@ -133,7 +133,7 @@ end;
|
||||
|
||||
procedure TTestMycDirtyFlag.TestReset_FromDirtyState_BecomesCleanAndReturnsTrue;
|
||||
var
|
||||
dirtyFlag: IMycFlag;
|
||||
dirtyFlag: TFlag.IFlag;
|
||||
resetResult: Boolean;
|
||||
begin
|
||||
dirtyFlag := CreateAndPrepareDirtyFlag(True); // Start dirty
|
||||
@@ -146,7 +146,7 @@ end;
|
||||
|
||||
procedure TTestMycDirtyFlag.TestReset_FromCleanState_StaysCleanAndReturnsFalse;
|
||||
var
|
||||
dirtyFlag: IMycFlag;
|
||||
dirtyFlag: TFlag.IFlag;
|
||||
resetResult: Boolean;
|
||||
begin
|
||||
dirtyFlag := CreateAndPrepareDirtyFlag(False); // Start clean
|
||||
@@ -159,7 +159,7 @@ end;
|
||||
|
||||
procedure TTestMycDirtyFlag.TestNotify_OnCleanFlag_SetsDirtyAndReturnsTrue;
|
||||
var
|
||||
dirtyFlag: IMycFlag;
|
||||
dirtyFlag: TFlag.IFlag;
|
||||
notifyResult: Boolean;
|
||||
begin
|
||||
dirtyFlag := CreateAndPrepareDirtyFlag(False); // Start clean
|
||||
@@ -172,7 +172,7 @@ end;
|
||||
|
||||
procedure TTestMycDirtyFlag.TestNotify_OnDirtyFlag_StaysDirtyAndReturnsFalse;
|
||||
var
|
||||
dirtyFlag: IMycFlag;
|
||||
dirtyFlag: TFlag.IFlag;
|
||||
notifyResult: Boolean;
|
||||
begin
|
||||
dirtyFlag := CreateAndPrepareDirtyFlag(True); // Start dirty
|
||||
@@ -187,9 +187,9 @@ end;
|
||||
|
||||
procedure TTestMycDirtyFlag.TestSubscribe_ToAlreadyDirtyFlag_NotifiesSubscriberImmediately;
|
||||
var
|
||||
dirtyFlag: IMycFlag;
|
||||
dirtyFlag: TFlag.IFlag;
|
||||
subscriber: TMockSubscriber;
|
||||
subscription: TSubscription;
|
||||
subscription: TSignal.TSubscription;
|
||||
begin
|
||||
dirtyFlag := CreateAndPrepareDirtyFlag(True); // Start dirty
|
||||
subscriber := TMockSubscriber.Create;
|
||||
@@ -202,9 +202,9 @@ end;
|
||||
|
||||
procedure TTestMycDirtyFlag.TestSubscribe_ToCleanFlag_DoesNotNotifySubscriberImmediately;
|
||||
var
|
||||
dirtyFlag: IMycFlag;
|
||||
dirtyFlag: TFlag.IFlag;
|
||||
subscriber: TMockSubscriber;
|
||||
subscription: TSubscription;
|
||||
subscription: TSignal.TSubscription;
|
||||
begin
|
||||
dirtyFlag := CreateAndPrepareDirtyFlag(False); // Start clean
|
||||
subscriber := TMockSubscriber.Create;
|
||||
@@ -217,9 +217,9 @@ end;
|
||||
|
||||
procedure TTestMycDirtyFlag.TestSubscriber_Notified_WhenFlagTransitionsToDirty;
|
||||
var
|
||||
dirtyFlag: IMycFlag;
|
||||
dirtyFlag: TFlag.IFlag;
|
||||
subscriber: TMockSubscriber;
|
||||
subscription: TSubscription;
|
||||
subscription: TSignal.TSubscription;
|
||||
begin
|
||||
dirtyFlag := CreateAndPrepareDirtyFlag(False); // Start clean
|
||||
subscriber := TMockSubscriber.Create;
|
||||
@@ -234,9 +234,9 @@ end;
|
||||
|
||||
procedure TTestMycDirtyFlag.TestSubscriber_NotNotified_WhenSettingAlreadyDirtyFlagViaNotify;
|
||||
var
|
||||
dirtyFlag: IMycFlag;
|
||||
dirtyFlag: TFlag.IFlag;
|
||||
subscriber: TMockSubscriber;
|
||||
subscription: TSubscription;
|
||||
subscription: TSignal.TSubscription;
|
||||
begin
|
||||
dirtyFlag := CreateAndPrepareDirtyFlag(True); // Start dirty
|
||||
subscriber := TMockSubscriber.Create;
|
||||
@@ -251,9 +251,9 @@ end;
|
||||
|
||||
procedure TTestMycDirtyFlag.TestSubscriber_NotNotified_ByResetAction;
|
||||
var
|
||||
dirtyFlag: IMycFlag;
|
||||
dirtyFlag: TFlag.IFlag;
|
||||
subscriber: TMockSubscriber;
|
||||
subscription: TSubscription;
|
||||
subscription: TSignal.TSubscription;
|
||||
begin
|
||||
dirtyFlag := CreateAndPrepareDirtyFlag(True); // Start dirty
|
||||
subscriber := TMockSubscriber.Create;
|
||||
@@ -269,9 +269,9 @@ end;
|
||||
|
||||
procedure TTestMycDirtyFlag.TestMultipleSubscribers_Notified_WhenFlagTransitionsToDirty;
|
||||
var
|
||||
dirtyFlag: IMycFlag;
|
||||
dirtyFlag: TFlag.IFlag;
|
||||
sub1, sub2: TMockSubscriber;
|
||||
subscription1, subscription2: TSubscription;
|
||||
subscription1, subscription2: TSignal.TSubscription;
|
||||
begin
|
||||
dirtyFlag := CreateAndPrepareDirtyFlag(False); // Start clean
|
||||
sub1 := TMockSubscriber.Create;
|
||||
@@ -287,9 +287,9 @@ end;
|
||||
|
||||
procedure TTestMycDirtyFlag.TestUnsubscribe_SubscriberNotNotified;
|
||||
var
|
||||
dirtyFlag: IMycFlag;
|
||||
dirtyFlag: TFlag.IFlag;
|
||||
subscriber: TMockSubscriber;
|
||||
subscription: TSubscription;
|
||||
subscription: TSignal.TSubscription;
|
||||
begin
|
||||
dirtyFlag := CreateAndPrepareDirtyFlag(False); // Start clean
|
||||
subscriber := TMockSubscriber.Create;
|
||||
@@ -308,9 +308,9 @@ end;
|
||||
|
||||
procedure TTestMycDirtyFlag.TestChain_A_Notifies_B_SimplePropagation;
|
||||
var
|
||||
flagA, flagB: IMycFlag;
|
||||
flagA, flagB: TFlag.IFlag;
|
||||
subToB: TMockSubscriber;
|
||||
subscriptionA_B, subscriptionMock_B: TSubscription;
|
||||
subscriptionA_B, subscriptionMock_B: TSignal.TSubscription;
|
||||
begin
|
||||
flagA := CreateAndPrepareDirtyFlag(False); // A starts clean
|
||||
flagB := CreateAndPrepareDirtyFlag(False); // B starts clean
|
||||
@@ -328,9 +328,9 @@ end;
|
||||
|
||||
procedure TTestMycDirtyFlag.TestChain_A_Notifies_B_Notifies_C_SimplePropagation;
|
||||
var
|
||||
flagA, flagB, flagC: IMycFlag;
|
||||
flagA, flagB, flagC: TFlag.IFlag;
|
||||
subToC: TMockSubscriber;
|
||||
subscriptionB_A, subscriptionC_B, subscriptionMock_C: TSubscription;
|
||||
subscriptionB_A, subscriptionC_B, subscriptionMock_C: TSignal.TSubscription;
|
||||
begin
|
||||
flagA := CreateAndPrepareDirtyFlag(False);
|
||||
flagB := CreateAndPrepareDirtyFlag(False);
|
||||
@@ -353,9 +353,9 @@ end;
|
||||
|
||||
procedure TTestMycDirtyFlag.TestChain_A_B_ResetB_RetriggerA_BStaysCleanIfANotChanged;
|
||||
var
|
||||
flagA, flagB: IMycFlag;
|
||||
flagA, flagB: TFlag.IFlag;
|
||||
subToB: TMockSubscriber;
|
||||
subscriptionA_B, subscriptionMock_B: TSubscription;
|
||||
subscriptionA_B, subscriptionMock_B: TSignal.TSubscription;
|
||||
begin
|
||||
flagA := CreateAndPrepareDirtyFlag(False);
|
||||
flagB := CreateAndPrepareDirtyFlag(False);
|
||||
@@ -382,9 +382,9 @@ end;
|
||||
|
||||
procedure TTestMycDirtyFlag.TestChain_A_B_ResetA_ThenTriggerA_FullPropagationToB;
|
||||
var
|
||||
flagA, flagB: IMycFlag;
|
||||
flagA, flagB: TFlag.IFlag;
|
||||
subToB: TMockSubscriber;
|
||||
subscriptionA_B, subscriptionMock_B: TSubscription;
|
||||
subscriptionA_B, subscriptionMock_B: TSignal.TSubscription;
|
||||
begin
|
||||
flagA := CreateAndPrepareDirtyFlag(False);
|
||||
flagB := CreateAndPrepareDirtyFlag(False);
|
||||
@@ -411,9 +411,9 @@ end;
|
||||
|
||||
procedure TTestMycDirtyFlag.TestChain_A_B_C_IntermediateBReset_RetriggerA_PropagatesToC;
|
||||
var
|
||||
flagA, flagB, flagC: IMycFlag;
|
||||
flagA, flagB, flagC: TFlag.IFlag;
|
||||
subToC: TMockSubscriber;
|
||||
subscriptionB_A, subscriptionC_B, subscriptionMock_C: TSubscription;
|
||||
subscriptionB_A, subscriptionC_B, subscriptionMock_C: TSignal.TSubscription;
|
||||
begin
|
||||
flagA := CreateAndPrepareDirtyFlag(False);
|
||||
flagB := CreateAndPrepareDirtyFlag(False);
|
||||
@@ -450,9 +450,9 @@ end;
|
||||
|
||||
procedure TTestMycDirtyFlag.TestChain_A_B_C_AllReset_RetriggerA_FullPropagation;
|
||||
var
|
||||
flagA, flagB, flagC: IMycFlag;
|
||||
flagA, flagB, flagC: TFlag.IFlag;
|
||||
subToC: TMockSubscriber;
|
||||
subscriptionB_A, subscriptionC_B, subscriptionMock_C: TSubscription;
|
||||
subscriptionB_A, subscriptionC_B, subscriptionMock_C: TSignal.TSubscription;
|
||||
begin
|
||||
flagA := CreateAndPrepareDirtyFlag(False);
|
||||
flagB := CreateAndPrepareDirtyFlag(False);
|
||||
@@ -490,9 +490,9 @@ end;
|
||||
|
||||
procedure TTestMycDirtyFlag.TestChain_A_B_C_TriggerA_ResetA_TriggerA_EnsureCNotifiedCorrectly;
|
||||
var
|
||||
flagA, flagB, flagC: IMycFlag;
|
||||
flagA, flagB, flagC: TFlag.IFlag;
|
||||
subToC: TMockSubscriber;
|
||||
subscriptionB_A, subscriptionC_B, subscriptionMock_C: TSubscription;
|
||||
subscriptionB_A, subscriptionC_B, subscriptionMock_C: TSignal.TSubscription;
|
||||
begin
|
||||
flagA := CreateAndPrepareDirtyFlag(False);
|
||||
flagB := CreateAndPrepareDirtyFlag(False);
|
||||
|
||||
Reference in New Issue
Block a user