 		
 		[Test]
 		public function testStepForwardNoHistory():void {
-			_testHistory.stepForward();
+			Assert.assertEquals(_testHistory.currentPosition, 0);
+			_testHistory.stepForward();
+			Assert.assertEquals(_testHistory.currentPosition, 0);
+			Assert.assertFalse(_testHistory.canStepForward);
+			Assert.assertFalse(_testHistory.canStepBackward);
 			
 		}
 		[Test]
 		public function testStepBackwardNoHistory():void {
-			_testHistory.stepBackward();
+			Assert.assertEquals(_testHistory.currentPosition, 0);
+			_testHistory.stepBackward();
+			Assert.assertEquals(_testHistory.currentPosition, 0);
+			Assert.assertFalse(_testHistory.canStepForward);
+			Assert.assertFalse(_testHistory.canStepBackward);
 			
 		}
 		

			_testHistory.push(new UndoableCommand());
			_testHistory.push(new UndoableCommand());
			Assert.assertEquals(_testHistory.currentPosition, 6);
			_testHistory.stepBackward();
			Assert.assertEquals(_testHistory.currentPosition, 5);
			_testHistory.stepBackward();
			Assert.assertEquals(_testHistory.currentPosition, 4);
			_testHistory.stepBackward();
			Assert.assertEquals(_testHistory.currentPosition, 3);
			_testHistory.stepBackward();
			Assert.assertEquals(_testHistory.currentPosition, 2);
			_testHistory.stepBackward();
			Assert.assertEquals(_testHistory.currentPosition, 1);
			_testHistory.stepBackward();
			Assert.assertEquals(_testHistory.currentPosition, 0);
			_testHistory.stepForward();
			Assert.assertEquals(_testHistory.currentPosition, 1);
			_testHistory.stepForward();
			Assert.assertEquals(_testHistory.currentPosition, 2);
			_testHistory.stepBackward();
			Assert.assertEquals(_testHistory.currentPosition, 1);
			_testHistory.stepBackward();
			Assert.assertEquals(_testHistory.currentPosition, 0);
		}
		
		[Test]

			Assert.assertEquals(_testHistory.currentPosition, 0);
			_testHistory.fastForward();
			Assert.assertEquals(_testHistory.currentPosition, 2);
			Assert.assertFalse(_testHistory.canStepForward);
			Assert.assertTrue(_testHistory.canStepBackward);
		}
		
		
		[Test]
		// Ensure numberOfHistoryItems equals the number of items in history
		public function testAddItems():void {
			_testHistory.push(new UndoableCommand());
			_testHistory.push(new UndoableCommand());
			_testHistory.push(new UndoableCommand());
			_testHistory.push(new UndoableCommand());
			Assert.assertEquals(_testHistory.numberOfHistoryItems, 4);
			Assert.assertEquals(_testHistory.currentPosition, 4);
			Assert.assertFalse(_testHistory.canStepForward);
			Assert.assertTrue(_testHistory.canStepBackward);
			
		}
		
