public async Task DecodeChannelCode_TaskCanceledException() { CancellationTokenSource cts = new CancellationTokenSource(100); await Assert.ThrowsExceptionAsync <TaskCanceledException>(async() => { DecodeChannelCodeResponse decodeChannelCodeResponse = await service.DecodeChannelCodeAsync(TWICE_CHANNEL_CODE, cts.Token); }); }
public async Task DecodeChannelCode_OK() { DecodeChannelCodeResponse decodeChannelCodeResponse = await service.DecodeChannelCodeAsync(TWICE_CHANNEL_CODE); Assert.AreEqual(TWICE_CHANNEL_CODE, decodeChannelCodeResponse.ChannelCode); Assert.AreEqual(TWICE_CHANNEL_SEQ, decodeChannelCodeResponse.ChannelSeq); }
public async Task <DecodeChannelCodeResponse> DecodeChannelCodeAsync(string channelCode) { ValidateChannelCode(channelCode); HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, string.Format(_decodeChannelCodeEndpoint, _appId, channelCode)); HttpResponseMessage response = await _http.SendAsync(request); if (!response.IsSuccessStatusCode) { await HandleNonSuccessStatusCodeAsync(response); } string responseText = await response.Content.ReadAsStringAsync(); if (string.IsNullOrEmpty(responseText) || string.IsNullOrWhiteSpace(responseText)) { throw new UndecodableChannelCodeException(channelCode); } dynamic responseTextDynamic = JsonConvert.DeserializeObject <dynamic>(responseText); if (responseTextDynamic == null || (responseTextDynamic != null && responseTextDynamic["result"] == null)) { throw new UnkownErrorException(); } DecodeChannelCodeResponse decodeChannelCodeResponse = JsonConvert.DeserializeObject <DecodeChannelCodeResponse>(responseTextDynamic["result"].ToString()); if (decodeChannelCodeResponse == null) { throw new UnmappableResponseException(); } return(decodeChannelCodeResponse); }
public async Task <About> GetAboutInfoAsync(string channelCode, CancellationToken cancellationToken) { DecodeChannelCodeResponse decodeChannelCodeResponse = await DecodeChannelCodeAsync(channelCode, cancellationToken); return(await GetAboutInfoAsync(decodeChannelCodeResponse.ChannelSeq, cancellationToken)); }
public async Task <About> GetAboutInfoAsync(string channelCode) { DecodeChannelCodeResponse decodeChannelCodeResponse = await DecodeChannelCodeAsync(channelCode); return(await GetAboutInfoAsync(decodeChannelCodeResponse.ChannelSeq)); }
public async Task <List <Notice> > GetNoticesAsync(string channelCode, CancellationToken cancellationToken) { DecodeChannelCodeResponse decodeChannelCodeResponse = await DecodeChannelCodeAsync(channelCode, cancellationToken); return(await GetNoticesAsync(decodeChannelCodeResponse.ChannelSeq, cancellationToken)); }
public async Task <List <Notice> > GetNoticesAsync(string channelCode) { DecodeChannelCodeResponse decodeChannelCodeResponse = await DecodeChannelCodeAsync(channelCode); return(await GetNoticesAsync(decodeChannelCodeResponse.ChannelSeq)); }
public async Task <UpcomingVideoListResponse> GetUpcomingVideoListAsync(string channelCode, int count, int page, CancellationToken cancellationToken) { DecodeChannelCodeResponse decodeChannelCodeResponse = await DecodeChannelCodeAsync(channelCode, cancellationToken); return(await GetUpcomingVideoListAsync(decodeChannelCodeResponse.ChannelSeq, count, page, cancellationToken)); }
public async Task <ChannelVideoListResponse> GetChannelVideoListAsync(string channelCode, int count, int page) { DecodeChannelCodeResponse decodeChannelCodeResponse = await DecodeChannelCodeAsync(channelCode); return(await GetChannelVideoListAsync(decodeChannelCodeResponse.ChannelSeq, count, page)); }
public async Task DecodeChannelCode_UndecodableChannelCodeException() { await Assert.ThrowsExceptionAsync <UndecodableChannelCodeException>(async() => { DecodeChannelCodeResponse decodeChannelCodeResponse = await service.DecodeChannelCodeAsync(UNDECODABLE_CHANNEL_CODE); }); }
public async Task DecodeChannelCode_ArgumentException_By_Invalid_Channel_Code() { await Assert.ThrowsExceptionAsync <ArgumentException>(async() => { DecodeChannelCodeResponse decodeChannelCodeResponse = await service.DecodeChannelCodeAsync(ARGUMENT_EXCEPTION_CHANNEL_CODE); }); }