public void ShouldStopWhenEvaluationSucceeds() { // ARRANGE var game = new Game( CardBuilder.Ace().Hearths(), CardBuilder.King().Hearths(), CardBuilder.Queen().Hearths(), CardBuilder.Jack().Hearths(), CardBuilder.Ten().Hearths()); var evaluationMock = new EvaluationMock(); evaluationMock.EvaluateReturns(new SuccessGameEvaluationResult(GameCategory.ROYAL_FLUSH, game.Cards)); var subject = new GameEvaluationChain(new IGameEvaluation[] { new WrongEvaluation(), new RightEvaluation(), evaluationMock }); // ACT subject.Evaluate(game); // ASSERT Assert.IsFalse(evaluationMock.EvaluateWasCalled); }
public void ShouldStopWhenEvaluationSucceeds() { // ARRANGE var game = new Game( CardBuilder.Ace().Hearths(), CardBuilder.King().Hearths(), CardBuilder.Queen().Hearths(), CardBuilder.Jack().Hearths(), CardBuilder.Ten().Hearths()); var evaluationMock = new EvaluationMock(); evaluationMock.EvaluateReturns(new SuccessGameEvaluationResult(GameCategory.ROYAL_FLUSH, game.Cards)); var subject = new GameEvaluationChain(new IGameEvaluation[] { new WrongEvaluation(), new RightEvaluation(), evaluationMock }); // ACT subject.Evaluate(game); // ASSERT Assert.IsFalse(evaluationMock.EvaluateWasCalled); }