Esempio n. 1
0
        public void RankingByClimber_GivenClimbersWithOverrideScoreboardPosition_ShouldRankByOverrideAndThenRouteCount()
        {
            // Arrange.
            var route1 = Route.Create("Route1");
            var route2 = Route.Create("Route2");
            var route3 = Route.Create("Route3");

            var climberWith1Route  = Climber.Create("Name1", new [] { route1 }, null);
            var climberWith3Routes = Climber.Create("Name2", new [] { route1, route2, route3 }, 1);
            var climberWith2Routes = Climber.Create("Name3", new [] { route1, route2 }, null);

            var climbers = new List <Climber>
            {
                climberWith1Route,
                climberWith3Routes,
                climberWith2Routes
            };

            var testObject = new ClimberRanker(climbers);

            // Act.
            var result = testObject.RankingByClimber;

            // Assert.
            Assert.NotNull(result);
            Assert.AreEqual(1, result[climberWith3Routes]);
            Assert.AreEqual(2, result[climberWith2Routes]);
            Assert.AreEqual(3, result[climberWith1Route]);
        }
Esempio n. 2
0
        public void RankingByClimber_GivenClimbersWithSameRouteCount_ShouldRankByRouteCount()
        {
            // Arrange.
            var route1 = Route.Create("Route1");
            var route2 = Route.Create("Route1");

            var climberWith1Route   = Climber.Create("Name1", new [] { route1 }, null);
            var climberWith2Routes1 = Climber.Create("Name2", new [] { route1, route2 }, null);
            var climberWith2Routes2 = Climber.Create("Name3", new [] { route1, route2 }, null);

            var climbers = new List <Climber>
            {
                climberWith1Route,
                climberWith2Routes1,
                climberWith2Routes2
            };

            var testObject = new ClimberRanker(climbers);

            // Act.
            var result = testObject.RankingByClimber;

            // Assert.
            Assert.NotNull(result);
            Assert.AreEqual(1, result[climberWith2Routes1]);
            Assert.AreEqual(1, result[climberWith2Routes2]);
            Assert.AreEqual(3, result[climberWith1Route]);
        }