public void GenerateSquad_ReturnsListOfPlayersContainingAtLeast20Players() { var squadGenerator = new SquadAssemblyGeneratorStrategy(); var players = squadGenerator.GenerateAssembly(ePerson.Player, RandomUtil.GetRandomInt(1, 5), RandomUtil.GetRandomInt(1, 5), RandomUtil.GetRandomInt(1, 5)); Assert.IsNotEmpty(players); Assert.GreaterOrEqual(players.Count, 20); Assert.GreaterOrEqual(players.Count(p => p.MainFunction == Position.Goaly), 2); Assert.GreaterOrEqual(players.Count(p => p.MainFunction == Position.Defence), 5); Assert.GreaterOrEqual(players.Count(p => p.MainFunction == Position.Midfield), 5); Assert.GreaterOrEqual(players.Count(p => p.MainFunction == Position.Forward), 3); }
public void BuildSquadAssembly_ReturnsSquadAssembly() { var squadGenerator = new SquadAssemblyGeneratorStrategy(); var squadAssembly = squadGenerator.BuildAssembly(); Assert.IsNotEmpty(squadAssembly); Assert.GreaterOrEqual(squadAssembly[Position.Goaly], 2); Assert.GreaterOrEqual(squadAssembly[Position.Defence], 5); Assert.GreaterOrEqual(squadAssembly[Position.Midfield], 5); Assert.GreaterOrEqual(squadAssembly[Position.Forward], 3); Assert.LessOrEqual(squadAssembly[Position.Goaly], 3); Assert.LessOrEqual(squadAssembly[Position.Defence], 7); Assert.LessOrEqual(squadAssembly[Position.Midfield], 7); Assert.LessOrEqual(squadAssembly[Position.Forward], 4); }
public void FillSquadAssemblyUntilSquadExistsOfAtLeast20Players_SquadHasMoreThen20players_NoPlayersAdded() { var squadAssembly = new Dictionary <int, int> { { Position.Goaly, 5 }, { Position.Defence, 5 }, { Position.Midfield, 5 }, { Position.Forward, 6 }, }; var squadGenerator = new SquadAssemblyGeneratorStrategy(); squadGenerator.CompleteAssembly(squadAssembly); var numberOfPlayers = CountNumberOfPlayersInSquadAssembly(squadAssembly); Assert.AreEqual(21, numberOfPlayers); }
public void FillSquadAssemblyUntilSquadExistsOfAtLeast20Players_SquadHasLessThen20players_PlayersAreAdded() { var squadAssembly = new Dictionary <int, int> { { Position.Goaly, 1 }, { Position.Defence, 3 }, { Position.Midfield, 3 }, { Position.Forward, 2 }, }; var squadGenerator = new SquadAssemblyGeneratorStrategy(); squadGenerator.CompleteAssembly(squadAssembly); var numberOfPlayers = CountNumberOfPlayersInSquadAssembly(squadAssembly); Assert.AreEqual(AssemblyGeneratorBase <Player> .NumberOfPersonsInAssembly, numberOfPlayers); }