public void MoveShape_WhenShapeCannotMoveRight_DoesNotMoveShape() { // Arrange var shape = new Shape(); var shadowShape = new Shape(); var field = new Field { Width = 2, Height = 3, ActiveShape = shape }; mockShapeService.Setup(s => s.CopyShape(shape)).Returns(shadowShape); mockShapeService.Setup(s => s.MoveShape(shadowShape, 1, 0)); mockFieldService.Setup(s => s.CanMoveShape(field, shadowShape)).Returns(false); // Act var result = sut.MoveShape(field, MoveDirection.RIGHT); // Assert Assert.That(result, Is.EqualTo(ActiveShapeStatus.ACTIVE)); }