public void Destroy_FromUnInitialized() { var entity = new EntityLifeCycleStub(); var eventFired = false; entity.Destroyed += (sender, args) => eventFired = true; entity.Destroy(); Assert.IsTrue(eventFired); Assert.IsTrue(entity.IsDestroyed); Assert.AreEqual(1, entity.DoDestroyCallCount); }
public void Initialize_Fails() { var entity = new EntityLifeCycleStub(false); var eventFired = false; entity.Initialized += (sender, args) => eventFired = true; var result = entity.Initialize(); Assert.IsFalse(result); Assert.IsFalse(eventFired); Assert.IsFalse(entity.IsInitialized); Assert.AreEqual(1, entity.DoInitializeCallCount); }
public void Activate_ChangesState() { var entity = new EntityLifeCycleStub(); var eventFired = false; entity.Activated += (sender, args) => eventFired = true; entity.Initialize(); entity.Activate(); Assert.IsTrue(eventFired); Assert.IsTrue(entity.IsActive); Assert.AreEqual(1, entity.DoActivateCallCount); }
public void Deactivate_IgnoresDuplicateDeactivation() { var entity = new EntityLifeCycleStub(); entity.Initialize(); entity.Activate(); entity.Deactivate(); var eventFired = false; entity.DeActivated += (sender, args) => eventFired = true; entity.Deactivate(); Assert.IsFalse(eventFired); Assert.IsTrue(entity.IsDeactivated); Assert.AreEqual(1, entity.DoDeactivateCallCount); }