public void ShouldThrowIfStartIsGreaterThanEnd(int startOffset, int endOffset, QueryDirection direction) { var query = new StatsRequestParams { Start = Now.AddHours(startOffset), End = Now.AddHours(endOffset), Direction = direction }; ThrowsAsync <AblyException>(() => ExecuteStatsQuery(query)); }
public static async Task StatsExample() { var realtime = new AblyRealtime("{{API_KEY}}"); var query = new StatsRequestParams { Unit = StatsIntervalGranularity.Hour }; var results = await realtime.StatsAsync(query); Stats thisHour = results.Items[0]; Console.WriteLine($"Published this hour {thisHour.Inbound.All.All}"); }
public async Task ShouldPassStatsByToQueryWithDefaultOfMinute(StatsIntervalGranularity?statsGranularity) { var query = new StatsRequestParams(); if (statsGranularity.HasValue) { query.Unit = statsGranularity.Value; } await ExecuteStatsQuery(query); LastRequest.AssertContainsParameter("by", statsGranularity.GetValueOrDefault(StatsIntervalGranularity.Minute).ToString().ToLower()); }
public async Task ShouldPassLimitWithDefaultof100(int?limit) { var query = new StatsRequestParams(); if (limit.HasValue) { query.Limit = limit.Value; } await ExecuteStatsQuery(query); LastRequest.AssertContainsParameter("limit", limit.GetValueOrDefault(100).ToString()); }
public async Task ShouldAcceptStartAndEndDateTimes(int startOffset, int endOffset, QueryDirection direction) { var query = new StatsRequestParams { Start = Now.AddHours(startOffset), End = Now.AddHours(endOffset), Direction = direction }; await ExecuteStatsQuery(query); LastRequest.AssertContainsParameter("start", query.Start.Value.ToUnixTimeInMilliseconds().ToString()); LastRequest.AssertContainsParameter("end", query.End.Value.ToUnixTimeInMilliseconds().ToString()); }
public async Task ShouldSetCorrectHeaders() { var rest = GetRestClient(); var query = new StatsRequestParams { Start = Now.AddHours(-1), End = Now, Direction = QueryDirection.Forwards, Limit = 1000 }; await rest.StatsAsync(query); LastRequest.AssertContainsParameter("start", query.Start.Value.ToUnixTimeInMilliseconds().ToString()); LastRequest.AssertContainsParameter("end", query.End.Value.ToUnixTimeInMilliseconds().ToString()); LastRequest.AssertContainsParameter("direction", query.Direction.ToString().ToLower()); LastRequest.AssertContainsParameter("limit", query.Limit.Value.ToString()); }
public async Task ShouldPassDirectionToRequestWithBackwardsAsDefault(QueryDirection?direction) { var query = new StatsRequestParams { Start = Now, End = Now }; if (direction.HasValue) { query.Direction = direction.Value; } await ExecuteStatsQuery(query); var expectedDirection = direction.GetValueOrDefault(QueryDirection.Backwards).ToString().ToLower(); LastRequest.AssertContainsParameter("direction", expectedDirection); }
private async Task ExecuteStatsQuery(StatsRequestParams query) { var rest = GetRestClient(); await rest.StatsAsync(query); }