public void Disqualify_Should_Reduce_Score() { //Arrange var olympics = new Olympics(); //Act olympics.AddCompetition(1, "SoftUniada", 500); olympics.AddCompetitor(5, "Ani"); olympics.Compete(5, 1); olympics.AddCompetitor(1, "Ivan"); olympics.Compete(1, 1); olympics.AddCompetitor(2, "Stamat"); olympics.Compete(2, 1); olympics.Disqualify(1, 5); int expectedScore = 0; long actualCompetitorsScore = olympics.GetByName("Ani").Sum(a => a.TotalScore); //Assert Assert.AreEqual(expectedScore, actualCompetitorsScore); }
public void Disqualify_Should_Decrease_Competitors_Count_In_Competition() { //Arrange var olympics = new Olympics(); //Act olympics.AddCompetition(1, "SoftUniada", 500); olympics.AddCompetitor(5, "Ani"); olympics.Compete(5, 1); olympics.AddCompetitor(1, "Ivan"); olympics.Compete(1, 1); olympics.AddCompetitor(2, "Stamat"); olympics.Compete(2, 1); olympics.Disqualify(1, 5); int expectedCompetitorsCount = 2; int actualCompetitorsCount = olympics.GetCompetition(1).Competitors.Count; //Assert Assert.AreEqual(expectedCompetitorsCount, actualCompetitorsCount); }
public void Disqualify_Should_Throw_Exception_With_Invalid_Competition_Id() { //Arrange var olympics = new Olympics(); //Act olympics.AddCompetition(1, "CompetitionOne", 50); olympics.AddCompetitor(1, "Ani"); olympics.Compete(1, 1); //Assert Assert.Throws <ArgumentException>(() => olympics.Disqualify(2, 1)); }