anchor.diff:    CheckEquals(TObject(FFiniteStateMachine), TObject(ReturnValue), 'ReturnValue = FFiniteStateMachine');
     CheckTrue(ReturnValue.HasTransition(FromState, OnCommand), 'CheckTrue::HasTransition');
     CheckEquals<TStateType>(ToState, ReturnValue.GetReachableState(FromState, OnCommand), 'GetReachableState = ToState');
  +
     CheckException(
       procedure
       begin
  
positive.code: end;
  
  procedure TestTFiniteStateMachine.TestAddTransitions_MethodEvents;
  begin
  
  end;
  
  procedure TestTFiniteStateMachine.TestAddTransitions_NoEvents;
  begin
  
  end;
  
  procedure TestTFiniteStateMachine.TestAddTransitions_ProcEvents;
  begin
  
  end;
  
  procedure TestTFiniteStateMachine.TestCreate;
  
negative.code:   OnEnter := OnEnterState;
    OnExit := OnExitState;
  
    ReturnValue := FFiniteStateMachine.AddTransition(FromState, ToState, OnCommand, OnEnter, OnExit);
  
    CheckEquals(TObject(FFiniteStateMachine), TObject(ReturnValue), 'ReturnValue = FFiniteStateMachine');
    CheckTrue(ReturnValue.HasTransition(FromState, OnCommand), 'CheckTrue::HasTransition');
    CheckEquals<TStateType>(ToState, ReturnValue.GetReachableState(FromState, OnCommand), 'GetReachableState = ToState');
  
    CheckException(
      procedure
      begin
  