public void NoTokens_Zero() { var tokens = new List <Token>(); var cost = new TokenSetCostCalculation(tokens).Get(); Assert.Equal(0, cost); }
public void MultipleTactics_CostGoesUp(int tactics, int expectedTacticsCost) { var tokens = Enumerable.Range(0, tactics).Select(x => new Token { FaceUp = TokenSideType.Tactics }).ToList(); var cost = new TokenSetCostCalculation(tokens).Get(); Assert.Equal(expectedTacticsCost + tactics * 2, cost); }
public void OneSidedInitiate_CostGoesUp(int initiatives, int expectedInitiativeCost) { var tokens = Enumerable.Range(0, initiatives).Select(x => new Token { FaceUp = new TokenSide { HasInitiative = true } }).ToList(); var cost = new TokenSetCostCalculation(tokens).Get(); Assert.Equal(expectedInitiativeCost + initiatives * 2, cost); }
public void OneTokenWithOneSideBlank_CostIsExpected(TokenSideType type, int quantity, int tokenTypeCost) { var tokens = new List <Token> { new Token { FaceUp = new TokenSide { Type = type, Quantity = quantity } } }; var cost = new TokenSetCostCalculation(tokens).Get(); Assert.Equal(tokenTypeCost + 2, cost); }
public void FiveBlankTokens_TenCost() { var tokens = new List <Token> { new Token(), new Token(), new Token(), new Token(), new Token() }; var cost = new TokenSetCostCalculation(tokens).Get(); Assert.Equal(10, cost); }
public void TwoSidedInitiative_DoubleSidedPenalty(int doubleSidedInitiatives, int expectedInitiativeCost) { var tokens = Enumerable.Range(0, doubleSidedInitiatives).Select(x => new Token { FaceUp = new TokenSide { HasInitiative = true }, FaceDown = new TokenSide { HasInitiative = true } }).ToList(); var cost = new TokenSetCostCalculation(tokens).Get(); Assert.Equal(expectedInitiativeCost + doubleSidedInitiatives * 2, cost); }