Exemple #1
0
        public void UriBuilderExtensionEnsureEscapedDataStrinEmpty()
        {
            //-- Arrange
            string paramName  = "param";
            string paramValue = "";

            // Act & Assert
            Assert.Throws <ArgumentNullException>(() => UriBuilderExtension.EnsureEscapedDataString(paramName, paramValue));
        }
Exemple #2
0
        public void UriBuilderExtensionEnsureEscapedDataString()
        {
            //-- Arrange
            string paramName  = "param";
            string paramValue = "<value>";

            // Act
            String escapedParam = UriBuilderExtension.EnsureEscapedDataString(paramName, paramValue);

            // Assert
            Assert.Equal(escapedParam, Uri.EscapeDataString(paramValue));
        }
        public void UriBuilderExtensionWithQuery()
        {
            //-- Arrange
            UriBuilder uriBulder   = new UriBuilder();
            QueryType  queryObject = new QueryType()
            {
                Property = "test_property_value",
                Array    = new string[] { "test_array_value_1", "test_array_value_2" }
            };
            string queryExpectedSerializedObject = "?property_test=test_property_value&array_test=test_array_value_1&array_test=test_array_value_2";

            // Act
            uriBulder = UriBuilderExtension.WithQuery <QueryType>(uriBulder, queryObject);

            // Assert
            Assert.Equal(queryExpectedSerializedObject, uriBulder.Query);
        }
        public void Validate(string code, DataModel.Contexts.Validation context, Action <ApiResponse <DataModel.Validation> > callback)
        {
            UriBuilder uriBuilder = null;

            if (string.IsNullOrEmpty(code))
            {
                uriBuilder = this.client.GetUriBuilder("/promotions/validation");
            }
            else
            {
                uriBuilder = this.client.GetUriBuilder(string.Format("/vouchers/{0}/validate", UriBuilderExtension.EnsureEscapedDataString("code", code)));
            }

            this.client.DoPostRequest(uriBuilder.Uri, context, callback);
        }
Exemple #5
0
        public async Task <DataModel.Customer> Update(string customerId, DataModel.Contexts.CustomerUpdate customer)
        {
            UriBuilder uriBuilder = this.client.GetUriBuilder(string.Format("/customers/{0}", UriBuilderExtension.EnsureEscapedDataString("customerId", customerId)));

            return(await this.client.DoPutRequest <DataModel.Customer, DataModel.Contexts.CustomerUpdate>(uriBuilder.Uri, customer).ConfigureAwait(false));
        }
Exemple #6
0
 public async Task Delete(string segmentId)
 {
     UriBuilder uriBuilder = this.client.GetUriBuilder(string.Format("/segments/{0}", UriBuilderExtension.EnsureEscapedDataString("segmentId", segmentId)));
     await this.client.DoDeleteRequest(uriBuilder.Uri).ConfigureAwait(false);
 }
Exemple #7
0
        public void Redeem(string code, DataModel.Queries.RedemptionRedeem query, DataModel.Contexts.RedemptionRedeem context, Action <ApiResponse <DataModel.Results.RedemptionRedeem> > callback)
        {
            UriBuilder uriBuilder = UriBuilderExtension.WithQuery(this.client.GetUriBuilder(string.Format("/vouchers/{0}/redemption", Uri.EscapeDataString(code))), query);

            this.client.DoPostRequest(uriBuilder.Uri, context, callback);
        }
Exemple #8
0
        public void Redeem(DataModel.Queries.RedemptionRedeem query, DataModel.Contexts.RedemptionRedeem context, Action <ApiResponse <DataModel.Results.RedemptionRedeem> > callback)
        {
            UriBuilder uriBuilder = UriBuilderExtension.WithQuery(this.client.GetUriBuilder("/redeem"), query);

            this.client.DoPostRequest(uriBuilder.Uri, context, callback);
        }
Exemple #9
0
        public void List(DataModel.Queries.PromotionTiersFilter filter, Action <ApiResponse <DataModel.PromotionTierList> > callback)
        {
            UriBuilder uriBuilder = UriBuilderExtension.WithQuery(this.client.GetUriBuilder("/promotions/tiers"), filter);

            this.client.DoGetRequest <DataModel.PromotionTierList>(uriBuilder.Uri, callback);
        }
        public async Task Publish(DataModel.Queries.VoucherPublish query, DataModel.Contexts.VoucherPublish context)
        {
            UriBuilder uriBuilder = UriBuilderExtension.WithQuery(this.client.GetUriBuilder("/vouchers/publish"), query);

            await this.client.DoPostRequest <Core.DataModel.Empty, DataModel.Contexts.VoucherPublish>(uriBuilder.Uri, context).ConfigureAwait(false);
        }
Exemple #11
0
        public async Task DeleteSku(string productId, string skuId, Core.DataModel.ForcedOperation query)
        {
            UriBuilder uriBuilder = UriBuilderExtension.WithQuery(this.client.GetUriBuilder(string.Format("/products/{0}/skus/{1}", Uri.EscapeDataString(productId), Uri.EscapeDataString(skuId))), query);

            await this.client.DoDeleteRequest(uriBuilder.Uri).ConfigureAwait(false);
        }
Exemple #12
0
        public void UpdateConsents(string customerId, DataModel.Contexts.CustomerConsentUpdate udpate, Action <ApiResponse <Core.DataModel.Empty> > callback)
        {
            UriBuilder uriBuilder = this.client.GetUriBuilder(string.Format("/customers/{0}/consents", UriBuilderExtension.EnsureEscapedDataString("customerId", customerId)));

            this.client.DoPutRequest(uriBuilder.Uri, udpate, callback);
        }
Exemple #13
0
        public void Rollback(string redemptionId, DataModel.Queries.RedemptionRollback query, DataModel.Contexts.RedemptionRollback context, Action <ApiResponse <DataModel.Results.RedemptionRollback> > callback)
        {
            UriBuilder uriBuilder = UriBuilderExtension.WithQuery(this.client.GetUriBuilder(string.Format("/redemptions/{0}/rollback", Uri.EscapeDataString(redemptionId))), query);

            this.client.DoPostRequest(uriBuilder.Uri, context, callback);
        }
Exemple #14
0
        public async Task DeleteSession(string code, string sessionId)
        {
            UriBuilder uriBuilder = this.client.GetUriBuilder(string.Format("/vouchers/{0}/sessions/{1}", UriBuilderExtension.EnsureEscapedDataString("code", code), UriBuilderExtension.EnsureEscapedDataString("sessionId", sessionId)));

            await this.client.DoDeleteRequest(uriBuilder.Uri).ConfigureAwait(false);
        }
Exemple #15
0
        public async Task <DataModel.Voucher> Enable(string code)
        {
            UriBuilder uriBuilder = this.client.GetUriBuilder(string.Format("/vouchers/{0}/enable", UriBuilderExtension.EnsureEscapedDataString("code", code)));

            return(await this.client.DoPostRequest <DataModel.Voucher>(uriBuilder.Uri).ConfigureAwait(false));
        }
Exemple #16
0
        public async Task Delete(string code, Core.DataModel.ForcedOperation query)
        {
            UriBuilder uriBuilder = UriBuilderExtension.WithQuery(this.client.GetUriBuilder(string.Format("/vouchers/{0}", UriBuilderExtension.EnsureEscapedDataString("code", code))), query);

            await this.client.DoDeleteRequest(uriBuilder.Uri).ConfigureAwait(false);
        }
Exemple #17
0
        public async Task <DataModel.Balance> AddGiftBalance(string code, DataModel.Contexts.VoucherAddGiftBalance balance)
        {
            UriBuilder uriBuilder = this.client.GetUriBuilder(string.Format("/vouchers/{0}/balance", UriBuilderExtension.EnsureEscapedDataString("code", code)));

            return(await this.client.DoPostRequest <DataModel.Balance, DataModel.Contexts.VoucherAddGiftBalance>(uriBuilder.Uri, balance).ConfigureAwait(false));
        }
Exemple #18
0
        public void ValidateVoucher(DataModel.Queries.VoucherValidation query, Action <ApiResponse <DataModel.Results.VoucherValidation> > callback)
        {
            UriBuilder uriBuilder = UriBuilderExtension.WithQuery(this.client.GetUriBuilder("/validate"), query);

            this.client.DoGetRequest(uriBuilder.Uri, callback);
        }
Exemple #19
0
        public async Task <Core.DataModel.Empty> UpdateConsents(string customerId, DataModel.Contexts.CustomerConsentUpdate udpate)
        {
            UriBuilder uriBuilder = this.client.GetUriBuilder(string.Format("/customers/{0}/consents", UriBuilderExtension.EnsureEscapedDataString("customerId", customerId)));

            return(await this.client.DoPutRequest <Core.DataModel.Empty, DataModel.Contexts.CustomerConsentUpdate>(uriBuilder.Uri, udpate).ConfigureAwait(false));
        }
Exemple #20
0
        public async Task <DataModel.Results.RedemptionRedeem> Redeem(DataModel.Queries.RedemptionRedeem query, DataModel.Contexts.RedemptionRedeem context)
        {
            UriBuilder uriBuilder = UriBuilderExtension.WithQuery(this.client.GetUriBuilder("/redeem"), query);

            return(await this.client.DoPostRequest <DataModel.Results.RedemptionRedeem, DataModel.Contexts.RedemptionRedeem>(uriBuilder.Uri, context).ConfigureAwait(false));
        }
Exemple #21
0
        public void DeleteSku(string productId, string skuId, Core.DataModel.ForcedOperation query, Action <ApiResponse> callback)
        {
            UriBuilder uriBuilder = UriBuilderExtension.WithQuery(this.client.GetUriBuilder(string.Format("/products/{0}/skus/{1}", Uri.EscapeDataString(productId), Uri.EscapeDataString(skuId))), query);

            this.client.DoDeleteRequest(uriBuilder.Uri, callback);
        }
Exemple #22
0
        public async Task Delete(string name, Core.DataModel.ForcedOperation query)
        {
            UriBuilder uriBuilder = UriBuilderExtension.WithQuery(this.client.GetUriBuilder(string.Format("/campaigns/{0}", Uri.EscapeDataString(name))), query);

            await this.client.DoDeleteRequest(uriBuilder.Uri).ConfigureAwait(false);
        }
Exemple #23
0
        public async Task <DataModel.CustomerList> List(DataModel.Queries.CustomerFilter filter)
        {
            UriBuilder uriBuilder = UriBuilderExtension.WithQuery(this.client.GetUriBuilder("/customers/"), filter);

            return(await this.client.DoGetRequest <DataModel.CustomerList>(uriBuilder.Uri).ConfigureAwait(false));
        }
Exemple #24
0
        public async Task <DataModel.ValidationVoucher> ValidateVoucher(string code, DataModel.Contexts.Validation context)
        {
            UriBuilder uriBuilder = this.client.GetUriBuilder(string.Format("/vouchers/{0}/validate", UriBuilderExtension.EnsureEscapedDataString("code", code)));

            return(await this.client.DoPostRequest <DataModel.ValidationVoucher, DataModel.Contexts.Validation>(uriBuilder.Uri, context).ConfigureAwait(false));
        }
        public void List(DataModel.Queries.OrderFilter filter, Action <ApiResponse <DataModel.OrderList> > callback)
        {
            UriBuilder uriBuilder = UriBuilderExtension.WithQuery(this.client.GetUriBuilder("/orders/"), filter);

            this.client.DoGetRequest(uriBuilder.Uri, callback);
        }
Exemple #26
0
        public async Task <DataModel.Validation> Validate(string code, DataModel.Contexts.Validation context)
        {
            UriBuilder uriBuilder = null;

            if (string.IsNullOrEmpty(code))
            {
                uriBuilder = this.client.GetUriBuilder("/promotions/validation");
            }
            else
            {
                uriBuilder = this.client.GetUriBuilder(string.Format("/vouchers/{0}/validate", UriBuilderExtension.EnsureEscapedDataString("code", code)));
            }

            return(await this.client.DoPostRequest <DataModel.Validation, DataModel.Contexts.Validation>(uriBuilder.Uri, context).ConfigureAwait(false));
        }
Exemple #27
0
 public async Task<DataModel.Segment> Get(string segmentId)
 {
     UriBuilder uriBuilder = this.client.GetUriBuilder(string.Format("/segments/{0}", UriBuilderExtension.EnsureEscapedDataString("segmentId", segmentId)));
     return await this.client.DoGetRequest<DataModel.Segment>(uriBuilder.Uri).ConfigureAwait(false);
 }
        public void ValidateVoucher(string code, DataModel.Contexts.Validation context, Action <ApiResponse <DataModel.Validation> > callback)
        {
            UriBuilder uriBuilder = this.client.GetUriBuilder(string.Format("/vouchers/{0}/validate", UriBuilderExtension.EnsureEscapedDataString("code", code)));

            this.client.DoPostRequest(uriBuilder.Uri, context, callback);
        }
        public async Task <DataModel.Validation> ValidateVoucher(DataModel.Queries.VoucherValidation query)
        {
            UriBuilder uriBuilder = UriBuilderExtension.WithQuery(this.client.GetUriBuilder("/validate"), query);

            return(await this.client.DoGetRequest <DataModel.Validation>(uriBuilder.Uri).ConfigureAwait(false));
        }
        public void ListAssignments(string validationRuleId, DataModel.Queries.BusinessValidationRuleAssignmentFilter filter, Action <ApiResponse <DataModel.BusinessValidationRuleAssignmentList> > callback)
        {
            UriBuilder uriBuilder = UriBuilderExtension.WithQuery(this.client.GetUriBuilder(string.Format("/validation-rules/{0}/assignments", Uri.EscapeDataString(validationRuleId))), filter);

            this.client.DoGetRequest(uriBuilder.Uri, callback);
        }