public TeamOfWeekLeadersViewModelTest()
        {
            // Arrange
            var player1 = new Player("Daniel", "*****@*****.**", Player.Status.Active) { Id = "9876" };
            var player2 = new Player("Tomas", "*****@*****.**", Player.Status.Active) { Id = "8765" };
            var teamOfWeek1 = new TeamOfWeek(1234, 2012, 10, "Team A", "A");
            teamOfWeek1.AddResultForPlayer(player1, 1, 210);
            teamOfWeek1.AddResultForPlayer(player2, 1, 190);
            var teamOfWeek2 = new TeamOfWeek(5432, 2012, 10, "Team B", "B");
            teamOfWeek2.AddResultForPlayer(player1, 0, 220);
            teamOfWeek2.AddResultForPlayer(player2, 1, 180);

            // Act
            viewModel = new TeamOfWeekViewModel(
                2012,
                new[]
                {
                    teamOfWeek1,
                    teamOfWeek2
                });
        }
        public ActionResult Turns(int? season)
        {
            if (season.HasValue == false)
                season = DocumentSession.LatestSeasonOrDefault(SystemTime.UtcNow.Year);

            var weeks = DocumentSession.Query<TeamOfWeek, TeamOfWeekIndex>()
                .Where(x => x.Season == season.Value)
                .OrderByDescending(x => x.Turn)
                .ToArray();
            var viewModel = new TeamOfWeekViewModel(season.Value, weeks);
            return View(viewModel);
        }