public void NPCBaseRedoActionName()
 {
     CustomerINotifyPC obj = new CustomerINotifyPC();
     UndoRedoINPC sut = new UndoRedoINPC(obj);
     obj.Name = "NewValue";
     Assert.That(sut.ActionList.First(), Is.EqualTo("Property Name changed from [] to [NewValue]"));
 }
 public void NPCBaseRedo()
 {
     CustomerINotifyPC obj = new CustomerINotifyPC();
     UndoRedoINPC sut = new UndoRedoINPC(obj);
     obj.Name = "NewValue";
     Assert.That(sut.UndoCount, Is.EqualTo(1));
 }
 public void NPCBaseUndo()
 {
     CustomerINotifyPC obj = new CustomerINotifyPC();
     UndoRedoINPC sut = new UndoRedoINPC(obj);
     obj.Name = "NewValue";
     sut.Undo();
     Assert.That(obj.Name, Is.Null);
 }
 public void NPCBaseRedoCountLimitExceeded()
 {
     CustomerINotifyPC obj = new CustomerINotifyPC();
     UndoRedoINPC sut = new UndoRedoINPC(obj);
     obj.Name = "one";
     sut.Undo();
     Assert.That(obj.Name, Is.Null);
     sut.Redo();
     Assert.That(obj.Name, Is.EqualTo("one"));
     sut.Redo();
     Assert.That(obj.Name, Is.EqualTo("one"));
 }
 public void NPCBaseUndoChangeAndRedo()
 {
     CustomerINotifyPC obj = new CustomerINotifyPC();
     UndoRedoINPC sut = new UndoRedoINPC(obj);
     obj.Name = "one";
     obj.Name = "two";
     obj.Name = "three";
     sut.Undo();
     Assert.That(obj.Name, Is.EqualTo("two"));
     sut.Undo();
     Assert.That(obj.Name, Is.EqualTo("one"));
     obj.Name = "four";
     sut.Undo();
     Assert.That(obj.Name, Is.EqualTo("one"));
     sut.Redo();
     Assert.That(obj.Name, Is.EqualTo("four"));
 }
 public void NPCBaseUndoTwoLevelAndRedo()
 {
     CustomerINotifyPC obj = new CustomerINotifyPC();
     UndoRedoINPC sut = new UndoRedoINPC(obj);
     obj.Name = "one";
     obj.Name = "two";
     sut.Undo();
     Assert.That(obj.Name, Is.EqualTo("one"));
     sut.Undo();
     Assert.That(obj.Name, Is.Null);
     sut.Redo();
     Assert.That(obj.Name, Is.EqualTo("one"));
     sut.Redo();
     Assert.That(obj.Name, Is.EqualTo("two"));
 }