Пример #1
0
        private async Task <MerchantOrderCreateRequest> BuildCreateRequestAsync()
        {
            Preference preference = await CreatePreferenceAsync();

            var merchantOrder = new MerchantOrderCreateRequest
            {
                PreferenceId      = preference.Id,
                Items             = new List <MerchantOrderItemRequest>(),
                ApplicationId     = "59441713004005",
                AdditionalInfo    = "Aditional info",
                ExternalReference = Guid.NewGuid().ToString(),
                Marketplace       = "NONE",
                NotificationUrl   = "https://seller/notification",
                SiteId            = "MLB",
            };

            foreach (var item in preference.Items)
            {
                merchantOrder.Items.Add(new MerchantOrderItemRequest
                {
                    Id          = item.Id,
                    CategoryId  = item.CategoryId,
                    CurrencyId  = item.CurrencyId.ToString(),
                    Description = item.Description,
                    PictureUrl  = item.PictureUrl,
                    Quantity    = item.Quantity.GetValueOrDefault(),
                    Title       = item.Title,
                    UnitPrice   = item.UnitPrice,
                });
            }

            return(merchantOrder);
        }
Пример #2
0
        public void Create_Success()
        {
            MerchantOrderCreateRequest request = BuildCreateRequest();

            MerchantOrder merchantOrder = client.Create(request);

            Assert.NotNull(merchantOrder);
            Assert.NotNull(merchantOrder.Id);
            Assert.Equal(request.ExternalReference, merchantOrder.ExternalReference);
        }
Пример #3
0
        public async Task CreateAsync_Success()
        {
            MerchantOrderCreateRequest request = await BuildCreateRequestAsync();

            MerchantOrder merchantOrder = await client.CreateAsync(request);

            Assert.NotNull(merchantOrder);
            Assert.NotNull(merchantOrder.Id);
            Assert.Equal(request.ExternalReference, merchantOrder.ExternalReference);
        }
Пример #4
0
        public void Get_Success()
        {
            MerchantOrderCreateRequest createRequest = BuildCreateRequest();
            MerchantOrder createdOrder = client.Create(createRequest);

            Thread.Sleep(1000);

            MerchantOrder merchantOrder = client.Get(createdOrder.Id.GetValueOrDefault());

            Assert.NotNull(merchantOrder);
            Assert.Equal(createdOrder.Id, merchantOrder.Id);
        }
Пример #5
0
        public async Task GetAsync_Success()
        {
            MerchantOrderCreateRequest createRequest = await BuildCreateRequestAsync();

            MerchantOrder createdOrder = await client.CreateAsync(createRequest);

            await Task.Delay(1000);

            MerchantOrder merchantOrder = await client.GetAsync(
                createdOrder.Id.GetValueOrDefault());

            Assert.NotNull(merchantOrder);
            Assert.Equal(createdOrder.Id, merchantOrder.Id);
        }
Пример #6
0
        public void Update_Success()
        {
            MerchantOrderCreateRequest createRequest = BuildCreateRequest();
            MerchantOrder createdOrder = client.Create(createRequest);

            Thread.Sleep(1000);

            var updateRequest = new MerchantOrderUpdateRequest
            {
                AdditionalInfo = "New Additional Info",
            };
            MerchantOrder order = client.Update(
                createdOrder.Id.GetValueOrDefault(), updateRequest);

            Assert.NotNull(order);
            Assert.NotNull(order.Items);
            Assert.Equal(updateRequest.AdditionalInfo, order.AdditionalInfo);
        }
Пример #7
0
        public async Task UpdateAsync_Success()
        {
            MerchantOrderCreateRequest createRequest = await BuildCreateRequestAsync();

            MerchantOrder createdOrder = await client.CreateAsync(createRequest);

            await Task.Delay(1000);

            var updateRequest = new MerchantOrderUpdateRequest
            {
                AdditionalInfo = "New Additional Info",
            };
            MerchantOrder order = await client.UpdateAsync(
                createdOrder.Id.GetValueOrDefault(), updateRequest);

            Assert.NotNull(order);
            Assert.NotNull(order.Items);
            Assert.Equal(updateRequest.AdditionalInfo, order.AdditionalInfo);
        }
Пример #8
0
        public void Search_Success()
        {
            MerchantOrderCreateRequest createRequest = BuildCreateRequest();
            MerchantOrder createdOrder = client.Create(createRequest);

            Thread.Sleep(3000);

            var searchRequest = new SearchRequest
            {
                Limit   = 1,
                Offset  = 0,
                Filters = new Dictionary <string, object>
                {
                    ["external_reference"] = createRequest.ExternalReference,
                },
            };
            ElementsResourcesPage <MerchantOrder> results = client.Search(searchRequest);

            Assert.NotNull(results);
            Assert.Equal(1, results.Total);
            Assert.NotNull(results.Elements);
            Assert.Equal(createdOrder.Id, results.Elements.First().Id);
        }
Пример #9
0
        public async Task SearchAsync_Success()
        {
            MerchantOrderCreateRequest createRequest = await BuildCreateRequestAsync();

            MerchantOrder createdOrder = await client.CreateAsync(createRequest);

            await Task.Delay(3000);

            var searchRequest = new SearchRequest
            {
                Limit   = 1,
                Offset  = 0,
                Filters = new Dictionary <string, object>
                {
                    ["external_reference"] = createRequest.ExternalReference,
                },
            };
            ElementsResourcesPage <MerchantOrder> results = await client.SearchAsync(searchRequest);

            Assert.NotNull(results);
            Assert.Equal(1, results.Total);
            Assert.NotNull(results.Elements);
            Assert.Equal(createdOrder.Id, results.Elements.First().Id);
        }