public async Task GetOrderSummary()
        {
            string accountNumber = AppConfiguration.AusPostAccountNumber;
            string username      = AppConfiguration.AusPostUsername;
            string password      = AppConfiguration.AusPostPassword;

            var client = new ShippingClient(accountNumber, username, password);

            client.Testing = true;

            // Delete files from previous runs
            string folder = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location) + "\\Summary";

            if (!System.IO.Directory.Exists(folder))
            {
                System.IO.Directory.CreateDirectory(folder);
            }
            foreach (string file in System.IO.Directory.GetFiles(folder))
            {
                System.IO.File.Delete(file);
            }

            var createOrderRequest = CreateCreateOrderRequest();

            var createOrderResponse = await client.CreateOrderIncludingShipmentsAsync(createOrderRequest);

            Assert.AreEqual(true, createOrderResponse.Succeeded, string.Join(", ", createOrderResponse.Errors.Select(e => e.Message)));
            Assert.AreEqual(true, !string.IsNullOrEmpty(createOrderResponse.Order.OrderID));
            Assert.AreEqual(0, createOrderResponse.Errors.Count);
            Assert.AreEqual(0, createOrderResponse.Warnings.Count);

            var getOrderSummaryRequest = new GetOrderSummaryRequest(createOrderResponse.Order.OrderID);

            var getOrderSummaryResponse = await client.GetOrderSummaryAsync(getOrderSummaryRequest);

            Assert.AreEqual(true, getOrderSummaryResponse.Succeeded, string.Join(", ", getOrderSummaryResponse.Errors.Select(e => e.Message)));
            Assert.IsNotNull(getOrderSummaryResponse.Stream);
            Assert.AreEqual(0, getOrderSummaryResponse.Errors.Count);
            Assert.AreEqual(0, getOrderSummaryResponse.Warnings.Count);

            // Download the PDF
            string pdfFile = folder + "\\summary.pdf";

            Assert.IsFalse(System.IO.File.Exists(pdfFile));
            using (var fileStream = System.IO.File.Create(pdfFile))
            {
                getOrderSummaryResponse.Stream.Seek(0, System.IO.SeekOrigin.Begin);
                getOrderSummaryResponse.Stream.CopyTo(fileStream);
            }
            Assert.IsTrue(System.IO.File.Exists(pdfFile));
        }
        public async Task GetOrderSummaryWithError()
        {
            string accountNumber = AppConfiguration.AusPostAccountNumber;
            string username      = AppConfiguration.AusPostUsername;
            string password      = AppConfiguration.AusPostPassword;

            var client = new ShippingClient(accountNumber, username, password);

            client.Testing = true;

            var getOrderSummaryRequest = new GetOrderSummaryRequest("Invalid");

            var getOrderSummaryResponse = await client.GetOrderSummaryAsync(getOrderSummaryRequest);

            Assert.AreEqual(false, getOrderSummaryResponse.Succeeded);
            Assert.AreEqual(null, getOrderSummaryResponse.Stream);
            Assert.AreEqual(1, getOrderSummaryResponse.Errors.Count);
            Assert.AreEqual(0, getOrderSummaryResponse.Warnings.Count);
        }
예제 #3
0
        public GetOrderSummaryResponse GetOrderSummary(GetOrderSummaryRequest request)
        {
            var response = new GetOrderSummaryResponse();

            return(response);
        }