示例#1
0
        public static async Task <StatsResponse> GetStats(SiegeApiClient client, Platform platform, params Guid[] userIds)
        {
            var request = new RestRequest(UbiUrls.GetStatsUrl(platform, Stats.Data.Concat(Operators.Data.SelectMany(op => op.Gadgets)).ToArray(), userIds));

            request.AddHeader("Authorization", client.GetAuthorizationHeader());

            return(await client.RestClient.GetAsync <StatsResponse>(request));
        }
示例#2
0
        public static async Task <ProfileResponse> FindProfilesAsync(SiegeApiClient client, Guid userId)
        {
            var request = new RestRequest(UbiUrls.GetReverseUrl(userId));

            request.AddHeader("Authorization", client.GetAuthorizationHeader());

            var response = await client.RestClient.ExecuteGetTaskAsync <ProfileResponse>(request);

            return(response.Data);
        }
示例#3
0
        public static async Task <ProfileResponse> FindProfileAsync(SiegeApiClient client, string username, Platform platform)
        {
            var request = new RestRequest(UbiUrls.GetProfileUrl(platform, username));

            request.AddHeader("Authorization", client.GetAuthorizationHeader());

            var response = await client.RestClient.ExecuteGetTaskAsync <ProfileResponse>(request);

            return(response.Data);
        }
示例#4
0
        public static async Task <RankResponse> GetRank(SiegeApiClient client, Platform platform, Region region, Season season, params Guid[] userIds)
        {
            var request = new RestRequest(UbiUrls.GetRankUrl(platform, region, season.Id, userIds));

            request.AddHeader("Authorization", client.GetAuthorizationHeader());

            var response = await client.RestClient.GetAsync <RankResponse>(request);

            return(response);
        }
示例#5
0
        public async Task Setup()
        {
            config = ConfigUtility.GetConfig(TestContext.CurrentContext.TestDirectory);

            apiClient            = new SiegeApiClient();
            Singletons.ApiClient = apiClient;

            try
            {
                await apiClient.LoginAsync(config.UplayEmail, config.UplayPassword);
            }
            catch (LoginFailedException ex)
            {
                // Store error message and ignore exception. Login is verified in TestSetup.
                loginErrorMessage = ex.Message;
            }
        }
示例#6
0
        public static async Task <ProgressionResponse> GetProgression(SiegeApiClient apiClient, Platform platform, params Guid[] profileIds)
        {
            var request = new RestRequest(UbiUrls.GetLevelUrl(platform, profileIds));

            request.AddHeader("Authorization", apiClient.GetAuthorizationHeader());

            var response = await apiClient.RestClient.ExecuteGetTaskAsync <ProgressionResponse>(request);

            if (response.StatusCode != HttpStatusCode.OK)
            {
                throw new UnexpectedHttpStatusCodeException(response.StatusCode);
            }

            if (response.ErrorException != null)
            {
                throw response.ErrorException;
            }

            return(response.Data);
        }