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); }