public void TestIfRestartCommandCallsTheNeededMethodsFromGameModelAndGameLogic()
{
var moqGame = new Mock<IGameModel>();
moqGame.Setup(x => x.ResetUserMoves()).Verifiable();
moqGame.SetupGet<IBalloon[,]>(x => x.Field).Returns(() => new IBalloon[5, 10]).Verifiable();
var moqLogic = new Mock<IGameLogicProvider>();
moqLogic.Setup(x => x.RandomizeBalloonField(It.IsAny<IBalloon[,]>())).Verifiable();
var ctx = new Context()
{
Game = moqGame.Object,
LogicProvider = moqLogic.Object
};
new RestartCommand().Execute(ctx);
moqGame.Verify(x => x.ResetUserMoves(), Times.Once, "2 or 0");
moqLogic.Verify(x => x.RandomizeBalloonField(It.IsAny<IBalloon[,]>()), Times.Once, "no msg 4 u betch");
}