public async Task GetMetapropertyCallsRequestSenderWithValidRequest()
        {
            var result = new Metaproperty();

            _apiRequestSenderMock.Setup(sender => sender.SendRequestAsync(It.IsAny <ApiRequest <Metaproperty> >()))
            .ReturnsAsync(result);
            var query        = new MetapropertyQuery("metapropertyId");
            var metaproperty = await _assetService.GetMetapropertyAsync(query);

            _apiRequestSenderMock.Verify(sender => sender.SendRequestAsync(
                                             It.Is <ApiRequest <Metaproperty> >(req =>
                                                                                req.Path == $"/api/v4/metaproperties/{query.MetapropertyId}" &&
                                                                                req.HTTPMethod == HttpMethod.Get &&
                                                                                req.Query == null
                                                                                )
                                             ));

            Assert.Equal(result, metaproperty);
        }
        public async Task WhenGetMetapropertiesThenRequestContainsExpectedValues()
        {
            var metaproperty = new Metaproperty();

            var mock = new Mock <IOauthRequestSender>();

            mock.Setup(reqSenderMock => reqSenderMock.SendRequestAsync(It.IsAny <Request <IDictionary <string, Metaproperty> > >()))
            .Returns(Task.FromResult <IDictionary <string, Metaproperty> >(new Dictionary <string, Metaproperty>
            {
                { "metaproperty1", metaproperty }
            }));

            var assetBankManager = new AssetBankManager(mock.Object);
            var metaproperties   = await assetBankManager.GetMetapropertiesAsync();

            mock.Verify(reqSenderMock
                        => reqSenderMock.SendRequestAsync(It.Is <Request <IDictionary <string, Metaproperty> > >(req => req.Uri == $"/api/v4/metaproperties/" &&
                                                                                                                 req.HTTPMethod == HttpMethod.Get &&
                                                                                                                 req.Query == null)));

            Assert.AreEqual(1, metaproperties.Count);
            Assert.AreEqual(metaproperties["metaproperty1"], metaproperty);
        }