public void GenerateLeaderboard() { using (var ts = new TransactionScope()) { this.BulkInsertTestData(); var repository = new StatisticsRepository(ConnectionString); var count = 5; var leaderboard = repository.GenerateLeaderboard(count); Assert.AreEqual(3, leaderboard.Count()); int idBoard = 0; foreach (var board in leaderboard) { Assert.AreEqual(++idBoard, board.Id); Assert.AreEqual(count, board.Scores.Count()); int idScore = 0; foreach (var score in board.Scores) { Assert.AreEqual(++idScore, score.Id); } } } }
public void GenerateLeaderboardFocused() { using (var ts = new TransactionScope()) { this.BulkInsertTestData(); var repository = new StatisticsRepository(ConnectionString); var count = 2; var userFocus = "testuser_50"; var leaderboard = repository.GenerateLeaderboard(userFocus, count); Assert.AreEqual(3, leaderboard.Count()); int idBoard = 0; foreach (var board in leaderboard) { Assert.AreEqual(++idBoard, board.Id); Assert.AreEqual((Math.Floor(count / 2.0) * 2) + 1, board.Scores.Count()); } } }