private void CheckResult(ClientTierInfo info, AccountTier currentTier, AccountTier?nextTier = null, AccountTier?upgradeRequestTier = null, string upgradeRequestStatus = null) { Assert.Equal(currentTier, info.CurrentTier.Tier); Assert.Equal(nextTier, info.NextTier?.Tier); Assert.Equal(upgradeRequestTier, info.UpgradeRequest?.Tier); Assert.Equal(upgradeRequestStatus, info.UpgradeRequest?.Status); }
public async Task <ClientTierInfo> GetClientTierInfoAsync(string clientId, AccountTier clientTier, string country) { var currentTierTask = GetCurrentTierAync(clientId, clientTier, country); var upgradeRequetTask = GetUpgradeRequestAsync(clientId, country); var questionnaireTask = _questionnaireService.GetQuestionnaireAsync(clientId); await Task.WhenAll(currentTierTask, upgradeRequetTask, questionnaireTask); NextTier nextTier = await GetNextTierAsync(clientId, clientTier, country, upgradeRequetTask.Result); var result = new ClientTierInfo { CurrentTier = currentTierTask.Result, NextTier = nextTier, UpgradeRequest = upgradeRequetTask.Result, QuestionnaireAnswered = questionnaireTask.Result.Any() }; return(result); }