public async Task Posting_new_score_updates_default_leaderboard() { var client = await GetClientAsync(username : "******"); LeaderboardGetResponse leaderboardBefore = await GetLeaderboardAsync(client); List <LeaderboardGetResponse.LeaderboardEntry> entries = leaderboardBefore.Entries.Where(e => e.Gamertag == "testuser").ToList(); //check that there is only one or less (if score wasn't posted yet) entry per user Assert.True(entries.Count <= 1); int oldScore = entries.Count == 0 ? 0 : entries.First().Score; //update the score posting a different (higher) result int newScore = oldScore + 1; await PostScoreAsync(client, newScore); //check that leaderboard has the updated score LeaderboardGetResponse leaderboardAfter = await GetLeaderboardAsync(client); int newFreshScore = leaderboardAfter.Entries.Where(e => e.Gamertag == "testuser").Select(e => e.Score).First(); Assert.Equal(newFreshScore, newScore); }
public async Task Limiting_top_scores_returns_limited_numer_of_rows() { var client = await GetClientAsync(); LeaderboardGetResponse response = await GetLeaderboardAsync(client, "Top-5", HttpStatusCode.OK); Assert.True(response.Entries.Length <= 5); }