/// <summary>
 /// Check <see cref="IAssetService"/> for more information
 /// </summary>
 /// <param name="query">Check <see cref="IAssetService"/> for more information</param>
 /// <returns>Check <see cref="IAssetService"/> for more information</returns>
 public async Task <Media> GetMediaInfoAsync(MediaInformationQuery query)
 {
     return(await _requestSender.SendRequestAsync(new ApiRequest <Media>
     {
         Path = $"/api/v4/media/{query.MediaId}/",
         HTTPMethod = HttpMethod.Get,
         Query = query,
     }).ConfigureAwait(false));
 }
Example #2
0
        /// <summary>
        /// Check <see cref="IAssetBankManager"/> for more information
        /// </summary>
        /// <param name="query">Check <see cref="IAssetBankManager"/> for more information</param>
        /// <returns>Check <see cref="IAssetBankManager"/> for more information</returns>
        public Task <Media> RequestMediaInfoAsync(MediaInformationQuery query)
        {
            var request = new Request <Media>
            {
                Uri        = $"/api/v4/media/{query.MediaId}/",
                HTTPMethod = HttpMethod.Get,
                Query      = query
            };

            return(_requestSender.SendRequestAsync(request));
        }
Example #3
0
        /// <summary>
        /// Check <see cref="IAssetService"/> for more information
        /// </summary>
        /// <param name="query">Check <see cref="IAssetService"/> for more information</param>
        /// <returns>Check <see cref="IAssetService"/> for more information</returns>
        public Task <Media> GetMediaInfoAsync(MediaInformationQuery query)
        {
            if (string.IsNullOrEmpty(query.MediaId))
            {
                throw new ArgumentNullException(nameof(query), "Parameter cannot be null or empty.");
            }

            var request = new ApiRequest <Media>
            {
                Path       = $"/api/v4/media/{query.MediaId}/",
                HTTPMethod = HttpMethod.Get,
                Query      = query
            };

            return(_requestSender.SendRequestAsync(request));
        }
        public async Task GetMediaInfoCallsRequestSenderWithValidRequest()
        {
            var apiRequestSender = new Mock <IApiRequestSender>();
            var result           = new Media();

            apiRequestSender.Setup(sender => sender.SendRequestAsync(It.IsAny <Request <Media> >()))
            .Returns(Task.FromResult(result));
            var assetService          = new AssetService(apiRequestSender.Object);
            var mediaInformationQuery = new MediaInformationQuery {
                MediaId = "mediaId"
            };
            var media = await assetService.GetMediaInfoAsync(mediaInformationQuery);

            apiRequestSender.Verify(sender => sender.SendRequestAsync(
                                        It.Is <Request <Media> >(
                                            req => req.Path == $"/api/v4/media/{mediaInformationQuery.MediaId}/" &&
                                            req.HTTPMethod == HttpMethod.Get &&
                                            req.Query == mediaInformationQuery)));

            Assert.Equal(result, media);
        }