public void ShouldGetUnshippedOrders() { //Arrange var shippingStationOrder = new ShipStationOrders(); //Act var result = shippingStationOrder.GetUnshippedOrders(); //Assert Assert.True(result.Count > 0); }
//Change GetImageURl method to public to test //[TestMethod] public void ShouldGetImageURL() { //Arrange var shippingStationOrder = new ShipStationOrders(); var EISKU = "MI7657226"; //Act var result = shippingStationOrder.GetImageURLPublic(EISKU); //Assert //Assert.IsTrue(result != ""); }
public void ShouldPostOrdersToShipStation() { //Arrange var shippingStationOrder = new ShipStationOrders(); Task <int> result_task; //Act result_task = shippingStationOrder.PostOrderToShippingStation(); result_task.Wait(); var result = result_task.Result; //Assert //Assert.IsTrue(result > 0); }
private static void ExecuteOneTimeRunAccurateWeight(DateTime lastDate) { Console.WriteLine("Starting One Time Execute Accurate Weight..."); var shippingStationOrder = new ShipStationOrders(); var result_task = shippingStationOrder.GetAccurateWeight_PreviousDates(lastDate); result_task.Wait(); var result = result_task.Result; Console.WriteLine("Total accurate weight items updated from ShipStation: " + result.ToString()); Console.WriteLine("One Time Execute Accurate Weight end."); Console.ReadKey(true); }
public void ShouldDeleteOrders() { //Arrange var shippingStationOrder = new ShipStationOrders(); var orderNumber = "test"; //Act var resultTask = shippingStationOrder.DeleteOrderByOrderNumber(orderNumber); resultTask.Wait(); var result = resultTask.Result; //Assert Assert.True(result); }
public void ShouldGetTrackingNumberandCost() { //Arrange var shippingStationOrder = new ShipStationOrders(); Task <int> resultTask; //Act resultTask = shippingStationOrder.PostTrackingNumberAndCost(); resultTask.Wait(); var result = resultTask.Result; //Assert Assert.True(result > 0); }
//[TestMethod] public void ShouldGetOrderFromShipStation() { //Arrange var shippingStationOrder = new ShipStationOrders(); Task <List <ShipStationOrdersViewModel> > result_task; List <ShipStationOrdersViewModel> result = null; //Act result_task = shippingStationOrder.GetOrders(); result_task.Wait(); result = result_task.Result; //Assert //Assert.IsTrue(result.Count > 0); }
public void ShouldGetShipmentFromShipStation() { //Arrange var shippingStationOrder = new ShipStationOrders(); Task <List <ShipStationShipmentViewModel> > result_task; List <ShipStationShipmentViewModel> result = new List <ShipStationShipmentViewModel>(); //Act result_task = shippingStationOrder.GetShipments(); result_task.Wait(); result = result_task.Result; //Assert Assert.True(result.Count > 0); }
public void ShouldPostOrderToShipStationByOrderNumber() { //Arrange var shippingStationOrder = new ShipStationOrders(); Task <int> result_task; int result = 0; var orderNumber = "1006539"; //Act result_task = shippingStationOrder.PostOrderToShippingStationByOrderNumber(orderNumber); result_task.Wait(); result = result_task.Result; //Assert //Assert.IsTrue(result > 0); }
//[TestMethod] public void ShouldGetShipmentFromShipStationByDate() { //Arrange var shippingStationOrder = new ShipStationOrders(); Task <List <ShipStationShipmentViewModel> > result_task; List <ShipStationShipmentViewModel> result = new List <ShipStationShipmentViewModel>(); var lastDate = Convert.ToDateTime("09/01/2016"); //Act result_task = shippingStationOrder.GetShipmentsByDate(lastDate); result_task.Wait(); result = result_task.Result; //Assert //Assert.IsTrue(result.Count > 0); }
public void ShouldPostShipmentFromShipStationByOrderNumber() { //Arrange var shippingStationOrder = new ShipStationOrders(); Task <int> result_task; int result = 0; var orderNumber = "114-9161886-9469832"; //Act result_task = shippingStationOrder.PostTrackingNumberAndCostByOrderNumber(orderNumber); result_task.Wait(); result = result_task.Result; //Assert Assert.True(result > 0); }
//[TestMethod] public void ShouldGetShipmentFromShipStationByOrderNumber() { //Arrange var shippingStationOrder = new ShipStationOrders(); var orderNumber = " 4872157"; Task <ShipStationShipmentViewModel> result_task; ShipStationShipmentViewModel result = null; //Act result_task = shippingStationOrder.GetShipmentsByOrderNumber(orderNumber); result_task.Wait(); result = result_task.Result; //Assert //Assert.IsTrue(result != null); }
/// <summary> /// Downloads orders page /// </summary> /// <param name="endpoint">API endpoint</param> /// <param name="page">page index</param> /// <param name="pageSize">page size</param> /// <param name="token">cancellation token</param> /// <returns></returns> private async Task <PageResponse <ShipStationOrder> > DownloadOrdersPageAsync(string endPoint, int page, int pageSize, CancellationToken token) { var ordersPage = new PageResponse <ShipStationOrder>(); var nextPageParams = ParamsBuilder.CreateGetNextPageParams(new ShipStationCommandConfig(page, pageSize)); var ordersEndPoint = endPoint.ConcatParams(nextPageParams); ShipStationOrders response = null; try { await ActionPolicies.GetAsync.Do(async() => { response = await this._webRequestServices.GetResponseAsync <ShipStationOrders>(ShipStationCommand.GetOrders, ordersEndPoint, token, _timeouts[ShipStationOperationEnum.ListOrders]).ConfigureAwait(false); }); } catch (WebException e) { if (this._webRequestServices.CanSkipException(e)) { ordersPage.HasInternalError = true; return(ordersPage); } } if (response == null) { return(ordersPage); } ordersPage.TotalPages = response.TotalPages; ordersPage.TotalEntities = response.TotalOrders; if (response.Orders != null && response.Orders.Any()) { ordersPage.Data.AddRange(response.Orders); } return(ordersPage); }
public async Task <ShipStationOrders> GetOrders(string status, DateTime createDateStart, int page) { Logger.Log("Ship Station Get Orders for status " + status + ", Create Start Date " + createDateStart.ToString() + " and Page " + page.ToString(), Status.INFO); UriBuilder UriBuilder = new UriBuilder(BaseUrl); UriBuilder.Path += "/orders"; UriBuilder.Query = new StringBuilder() .Append("orderStatus=").Append(status) .Append("&").Append("page=").Append(page) .Append("&").Append("createDateStart=").Append(createDateStart) .ToString(); HttpResponseMessage HttpResponse = await HttpClient.GetAsync(UriBuilder.Uri); if (HttpResponse.IsSuccessStatusCode) { var ResponseContent = await HttpResponse.Content.ReadAsStringAsync(); ShipStationOrders ShipStationOrders = JsonConvert.DeserializeObject <ShipStationOrders>(ResponseContent); string Message = String.Concat("Ship Station Get Orders Success"); Logger.Log(Message, Status.INFO); return(ShipStationOrders); } else { string Message = String.Concat("Error occurred, the status code is: ", HttpResponse.StatusCode); Logger.Log(Message, Status.ERROR); return(new ShipStationOrders()); } }
public List <ShipStationOrder> GetOrders(OrderStatus status) { Logger.Log("Get Orders from Ship Station with status " + status, Status.INFO); List <ShipStationOrder> OrderList = new List <ShipStationOrder>(); DateTime StartDate = DateTime.Now.AddDays(-5); string OrderStatus = AppUtils.ToOrderStatusString(status); ShipStationOrders ShipStationOrders = Task.Run(async() => await ShipStationClientService.GetOrders( OrderStatus, StartDate, 1)).Result; if (ShipStationOrders.Orders == null) { return(OrderList); } OrderList.AddRange(ShipStationOrders.Orders); int Page = 2; uint Pages = ShipStationOrders.Pages; while (Page <= Pages) { ShipStationOrders NextPage = Task.Run(async() => await ShipStationClientService.GetOrders( OrderStatus, StartDate, Page)).Result; OrderList.AddRange(ShipStationOrders.Orders); Page++; Logger.Log("Orders Page Requested, Page " + Page.ToString() + " out of Pages " + Pages.ToString(), Status.DEBUG); } return(OrderList); }
private static void ExecuteMainProcess() { Console.Title = ConfigurationManager.AppSettings["AppName"].ToString(); Console.WriteLine("Enter the start date of fetching the orders (yyyy-mm-dd)."); var dateStr = Console.ReadLine(); DateTime orderCreatedAfter = DateTime.Now.Date; if (!string.IsNullOrEmpty(dateStr)) { orderCreatedAfter = Convert.ToDateTime(dateStr); } Console.WriteLine("Starting the MWS Orders server..."); var ordersManager = initMarketplaceManager(); var inventoryManager = new ProductInventoryManager(); bool isKeepRunning = true; while (isKeepRunning) { Console.WriteLine("Fetch the orders from marketplaces and insert them to the database..."); // fetch the orders from marketplaces and insert them to the database var orders = ordersManager.DownloadMarketplaceOrders(orderCreatedAfter.AddHours(-3)); Console.WriteLine("Let's do the product inventory update based on the orders..."); // let's do the vendor product inventory update based on the orders inventoryManager.UpdateOrderVendorProductInventory(orders); Console.WriteLine("Starting to post unshipped orders to ShipStation..."); // post unshipped orders to ShipStation using (var shippingStationOrder = new ShipStationOrders()) { var result_task = shippingStationOrder.PostOrderToShippingStation(); result_task.Wait(); var result = result_task.Result; //result returns the number of unshipped orders posted Console.WriteLine("Done posting unshipped orders to ShipStation."); Console.WriteLine("Total items posted to ShipStation: " + result.ToString()); // get track number and cost Console.WriteLine("Starting to get tracking number and cost from ShipStation..."); result_task = shippingStationOrder.PostTrackingNumberAndCost(); result = result_task.Result; Console.WriteLine("Done retreving shipment data from ShipStation."); Console.WriteLine("Total items acquired from ShipStation: " + result.ToString()); } // send confirm shipment to all orders ordersManager.ConfirmOrdersShipment(); // let's sleep for 1 minutes Console.WriteLine("The program goes to sleep for 1 minute..."); Thread.Sleep(60000); // let's set the orderCreated to today's date orderCreatedAfter = DateTime.UtcNow.Date; } Console.WriteLine("MWS Orders manager server end."); Console.ReadKey(true); }