Пример #1
0
        public void ShouldListAddressesUsingFilters()
        {
            IRestRequest savedRequest = null;
            mockClient.Setup(trc => trc.Execute<AddressResult>(It.IsAny<IRestRequest>()))
                .Callback<IRestRequest>((request) => savedRequest = request)
                .Returns(new AddressResult());
            var client = mockClient.Object;
            var options = new AddressListRequest ();
            options.CustomerName = "Homer Simpson";
            options.FriendlyName = Utilities.MakeRandomFriendlyName();
            options.IsoCountry = "US";
            options.Page = 1;
            options.PageSize = 10;

            client.ListAddresses(options);

            mockClient.Verify(trc => trc.Execute<AddressResult>(It.IsAny<IRestRequest>()), Times.Once);
            Assert.IsNotNull(savedRequest);
            Assert.AreEqual("Accounts/{AccountSid}/Addresses.json", savedRequest.Resource);
            Assert.AreEqual(Method.GET, savedRequest.Method);
            Assert.AreEqual(5, savedRequest.Parameters.Count);
            var customerNameParam = savedRequest.Parameters.Find(x => x.Name == "CustomerName");
            Assert.IsNotNull(customerNameParam);
            Assert.AreEqual(options.CustomerName, customerNameParam.Value);
            var friendlyNameParam = savedRequest.Parameters.Find(x => x.Name == "FriendlyName");
            Assert.IsNotNull(friendlyNameParam);
            Assert.AreEqual(options.FriendlyName, friendlyNameParam.Value);
            var isoCountryParam = savedRequest.Parameters.Find(x => x.Name == "IsoCountry");
            Assert.IsNotNull(isoCountryParam);
            Assert.AreEqual(options.IsoCountry, isoCountryParam.Value);
            var pageParam = savedRequest.Parameters.Find(x => x.Name == "Page");
            Assert.IsNotNull(pageParam);
            Assert.AreEqual(options.Page, pageParam.Value);
            var pageSizeParam = savedRequest.Parameters.Find(x => x.Name == "PageSize");
            Assert.IsNotNull(pageSizeParam);
            Assert.AreEqual(options.PageSize, pageSizeParam.Value);
        }