public void WhenBallHitsPlayer2ItMovesLeft() { // arrange var player1Mock = new Mock <IPlayer>(); var player2Mock = new Mock <IPlayer>(); player2Mock.Setup(m => m.Position).Returns(3); player2Mock.Setup(m => m.PadLength).Returns(4); const int windowWidth = 10; var ball = new Ball() { YPosition = 3, XPosition = windowWidth - 2, RightDirection = true }; var gamePhysics = new Physics(ball, player1Mock.Object, player2Mock.Object); //act gamePhysics.BallHitsPlayer2(windowWidth); //assert var actual = ball.RightDirection; const bool expected = false; Assert.Equal(expected, actual); }