private Counts GetCurrentCodeContractCounters() { var leaderboardEntities = new LeaderboardDataService.LeaderboardEntitySet(new Uri("http://leaderboard/odata/LeaderboardDataService.svc")); leaderboardEntities.Credentials = CredentialCache.DefaultCredentials; int users = artificialCount; var runs = artificialCount; var fail = artificialCount; try { IEnumerable <int> numUsers = leaderboardEntities.Execute <int>(new Uri("http://leaderboard/odata/LeaderboardDataService.svc/GetNumUsersByID?appId=555555")); users += numUsers.FirstOrDefault(); var allUses = (from agg in leaderboardEntities.UserAggregations where agg.appid == 555555 select agg).ToList(); runs += allUses.Sum(agg => agg.uses); fail += allUses.Sum(agg => (agg.featureid < 0 || agg.featureid > 4000000) ? agg.uses : 0); } catch { } return(new Counts { numUsers = users, numFail = fail, numRuns = runs }); }
static void Main(string[] args) { var options = new Options(); options.Parse(args); if (options.HasErrors) { options.PrintErrorsAndExit(Console.Out); } if (options.HelpRequested || options.GeneralArguments.Count > 0) { options.PrintOptions(""); Environment.Exit(0); } LeaderboardDataService.LeaderboardEntitySet leaderboardEntities = new LeaderboardDataService.LeaderboardEntitySet(new Uri("http://leaderboard/odata/LeaderboardDataService.svc")); leaderboardEntities.Credentials = CredentialCache.DefaultCredentials; var allUses = (from agg in leaderboardEntities.UserAggregations where agg.appid == 555555 select agg).ToList(); var failures = from fail in allUses where FeatureMatch(fail.featureid, options.feature) select fail; foreach (var failure in failures) { Console.WriteLine("User {0} used feature {3} {1} times (code {2})", failure.userid, failure.uses, failure.featureid, options.feature); if (failure.featureid < 0) { DecodeFailure(failure.featureid); } } }