// // R E T U R N S K U ############################################################################## // public void SpecialReturnSKUs() { RanorexRepository repo = new RanorexRepository(); fnWriteToLogFile WriteToLogFile = new fnWriteToLogFile(); FnProductionIssueFunctions ProductionIssueFunctions = new FnProductionIssueFunctions(); Global.LogText = @"Starting Return"; WriteToLogFile.Run(); Global.SpecialReturningSKUs = true; SpecialEnterSKUs(); }
//##################################################################################### // Production Issue: 3432/01 6/21 Missing Transaction Tr5 // 1. Add a PUR pro customer to the order. // 2. Trade SKU 112321 // 3. Trade SKU 954010 // 4. Trade SKU 109523 // 5. Trade SKU 954013 // 6. Trade SKU 109536 // 7. Trade SKU 103080 // 8. Trade SKU 107399 // 9. Purchase SKU 109386 // 10. Purchase SKU 101820 // 11. Pre-Order SKU 113170, with a deposit of $9.92 // 12. Pay the rest with cash. //##################################################################################### private void Issue_3432_01() { FnProductionIssueFunctions ProductionIssueFunctions = new FnProductionIssueFunctions(); fnWriteToLogFile WriteToLogFile = new fnWriteToLogFile(); RanorexRepository repo = new RanorexRepository(); Global.LogText = " Start Issue_3432_01"; WriteToLogFile.Run(); ProductionIssueFunctions.SpecialStartTransaction(); Global.SpecialCustomerPhoneNumber = "8175551133"; ProductionIssueFunctions.SpecialEnterCustomer(); Global.NumberSpecialTrades = 7; Global.SpecialTrades[1] = "112321"; Global.SpecialTrades[2] = "954010"; Global.SpecialTrades[3] = "109523"; Global.SpecialTrades[4] = "954013"; Global.SpecialTrades[5] = "109536"; Global.SpecialTrades[6] = "103080"; Global.SpecialTrades[7] = "107399"; ProductionIssueFunctions.SpecialEnterTradess(); Global.NumberSpecialSKUs = 3; Global.SpecialSKUs[1] = "109386"; Global.SpecialSKUs[2] = "101820"; Global.SpecialInitialDeposit = "9.92"; Global.SpecialSKUs[3] = "108274"; // Pre-Order item ProductionIssueFunctions.SpecialPurchaseSKUs(); Global.SpecialCheckingOut = false; Global.PayWithMethod = "Cash"; Global.SpecialPayThisAmount = "All"; ProductionIssueFunctions.SpecialPreCheckOut(); ProductionIssueFunctions.SpecialCheckForCodeF4Alert(); repo.RetechLoginView.TxtPassword.PressKeys("{Escape}"); // initial sign on screen Global.LogText = " End Issue_3432_01"; WriteToLogFile.Run(); if (Directory.Exists(Global.MiniDumpDirectory)) { Environment.Exit(0); } }
//##################################################################################### // Production Issue: 1705/01 9/13 Access Lock Bug // 1. Add SKU 930586 to the order. // 2. Add a PUR pro customer to the order. // 3. Pay $10.00 with cash. // 4. Pay the rest with debit. //##################################################################################### private void Issue_1705_01() { FnProductionIssueFunctions ProductionIssueFunctions = new FnProductionIssueFunctions(); fnWriteToLogFile WriteToLogFile = new fnWriteToLogFile(); RanorexRepository repo = new RanorexRepository(); Global.LogText = " Start Issue_1705_01"; WriteToLogFile.Run(); ProductionIssueFunctions.SpecialStartTransaction(); Global.NumberSpecialSKUs = 1; Global.SpecialSKUs[1] = "930586"; ProductionIssueFunctions.SpecialPurchaseSKUs(); Global.SpecialCustomerPhoneNumber = "8175551133"; ProductionIssueFunctions.SpecialEnterCustomer(); Global.SpecialCheckingOut = false; Global.PayWithMethod = "Cash"; Global.SpecialPayThisAmount = "10.00"; ProductionIssueFunctions.SpecialPreCheckOut(); Global.SpecialCheckingOut = true; Global.PayWithMethod = "Credit"; Global.SpecialPayThisAmount = "All"; ProductionIssueFunctions.SpecialPreCheckOut(); ProductionIssueFunctions.SpecialCheckForCodeF4Alert(); repo.RetechLoginView.TxtPassword.PressKeys("{Escape}"); // initial sign on screen Global.LogText = " End Issue_1705_01"; WriteToLogFile.Run(); if (Directory.Exists(Global.MiniDumpDirectory)) { Environment.Exit(0); } }
public void Run() { Mouse.DefaultMoveTime = 300; Keyboard.DefaultKeyPressTime = 100; Delay.SpeedFactor = 1.0; Ranorex.Unknown element = null; RanorexRepository repo = new RanorexRepository(); fnWriteToLogFile WriteToLogFile = new fnWriteToLogFile(); fnWriteToErrorFile WriteToErrorFile = new fnWriteToErrorFile(); fnWaitForItemSearchToFinish WaitForItemSearchToFinish = new fnWaitForItemSearchToFinish(); fnDumpStatsQ4 DumpStatsQ4 = new fnDumpStatsQ4(); fnTimeMinusOverhead TimeMinusOverhead = new fnTimeMinusOverhead(); fnUpdatePALStatusMonitor UpdatePALStatusMonitor = new fnUpdatePALStatusMonitor(); FnWriteOutStatsQ4Buffer WriteOutStatsQ4Buffer = new FnWriteOutStatsQ4Buffer(); FnCheckout Checkout = new FnCheckout(); FnStartTransaction StartTransaction = new FnStartTransaction(); FnProductionIssueFunctions ProductionIssueFunctions = new FnProductionIssueFunctions(); FnEnterSKU EnterSKU = new FnEnterSKU(); Global.RetechScenariosPerformed++; UpdatePALStatusMonitor.Run(); // Create new stopwatch Stopwatch MystopwatchTT = new Stopwatch(); MystopwatchTT.Reset(); MystopwatchTT.Start(); Stopwatch MystopwatchTotal = new Stopwatch(); MystopwatchTotal.Reset(); MystopwatchTotal.Start(); Stopwatch MystopwatchQ4 = new Stopwatch(); Stopwatch MystopwatchModuleTotal = new Stopwatch(); Stopwatch MystopwatchF1 = new Stopwatch(); Stopwatch MystopwatchTrade = new Stopwatch(); // Start MystopwatchModuleTotal.Reset(); MystopwatchModuleTotal.Start(); MystopwatchQ4.Reset(); MystopwatchQ4.Start(); Global.LogText = @"Start Transaction"; WriteToLogFile.Run(); StartTransaction.Run(); if (Global.DomesticRegister) { Global.LogText = @"Enter Customer Information"; WriteToLogFile.Run(); // Enter customer MystopwatchQ4.Reset(); MystopwatchQ4.Start(); repo.Retech.FindCustomerTextBox.PressKeys("9727651234{Enter}"); Thread.Sleep(100); while (!repo.RetechFindCustomerView.CustomerSearchCriteria.Enabled) { Thread.Sleep(100); } TimeMinusOverhead.Run((float)MystopwatchModuleTotal.ElapsedMilliseconds); // Subtract overhead and store in Global.Q4StatLine Global.CurrentMetricDesciption = "Member Card Lookup"; Global.Module = "Member Card Lookup"; DumpStatsQ4.Run(); Global.CurrentMetricDesciption = "Module Total Time"; DumpStatsQ4.Run(); } MystopwatchModuleTotal.Reset(); MystopwatchModuleTotal.Start(); MystopwatchQ4.Reset(); MystopwatchQ4.Start(); if (Global.DomesticRegister) { while (!Host.Local.TryFindSingle(repo.RetechFindCustomerView.ListBoxItemInfo.AbsolutePath.ToString(), out element)) { Thread.Sleep(100); } // change 1/8/17 repo.RetechFindCustomerView.ListBoxItem.Click(); while (Host.Local.TryFindSingle(repo.RetechFindCustomerView.ListBoxItemInfo.AbsolutePath.ToString(), out element)) { Thread.Sleep(100); } } int NumberSKUs = 1; if (Global.NumberOfTradesMinusOne == 4) { NumberSKUs = 1; } else if (Global.NumberOfTradesMinusOne == 99) { NumberSKUs = 4; } for (int x = 1; x <= NumberSKUs; x++) { Global.LogText = @"Add Item"; WriteToLogFile.Run(); if (Global.DomesticRegister) { // Press F1 add item Keyboard.Press("{F1}"); // Add Item F1 MystopwatchF1.Reset(); MystopwatchF1.Start(); while (!Host.Local.TryFindSingle(repo.AddItemTextInfo.AbsolutePath.ToString(), out element)) { Thread.Sleep(100); if (MystopwatchF1.ElapsedMilliseconds > 1000) { Keyboard.Press("{F1}"); Thread.Sleep(100); MystopwatchF1.Reset(); MystopwatchF1.Start(); } } } Global.LogText = @"Enter purchase SKU"; WriteToLogFile.Run(); // Enter SKUs if (Global.DomesticRegister) { if (NumberSKUs == 1) { repo.AddItemText.TextValue = "115571"; } else { repo.AddItemText.TextValue = "883672"; } repo.RetechQuickEntryView.TxtWatermark.PressKeys("{Enter}"); Thread.Sleep(200); while (!Host.Local.TryFindSingle(repo.ContinueButtonCommandInfo.AbsolutePath.ToString(), out element)) { if (Host.Local.TryFindSingle(repo.ShellView.AgeVerifiedCommandWPFInfo.AbsolutePath.ToString(), out element)) { repo.ShellView.AgeVerifiedCommandWPF.Click(); Thread.Sleep(100); } // 11/16/18 } // if(Host.Local.TryFindSingle(repo.ShellView.AgeVerifiedCommandWPFInfo.AbsolutePath.ToString(), out element)) // { repo.ShellView.AgeVerifiedCommandWPF.Click(); // Thread.Sleep(100); // } if (Host.Local.TryFindSingle(repo.ContinueButtonCommandInfo.AbsolutePath.ToString(), out element)) { repo.ContinueButtonCommand.Click(); Thread.Sleep(100); } while (!repo.AddLineItemCommand.Enabled) { if (Host.Local.TryFindSingle(repo.ContinueButtonCommandInfo.AbsolutePath.ToString(), out element)) { repo.ContinueButtonCommand.Click(); } Thread.Sleep(100); } } else // International { EnterSKU.Run(); // Value set in EnterSKU } } // TimeMinusOverhead.Run((float) MystopwatchQ4.ElapsedMilliseconds); // Subtract overhead and store in Global.Q4StatLine // Global.CurrentMetricDesciption = "Enter SKUs"; // Global.Module = "Enter SKUs"; // DumpStatsQ4.Run(); // Global.CurrentMetricDesciption = "Module Total Time"; // DumpStatsQ4.Run(); MystopwatchModuleTotal.Reset(); MystopwatchModuleTotal.Start(); MystopwatchQ4.Reset(); MystopwatchQ4.Start(); if (Global.DomesticRegister) { switch (Global.RetechVersion.Substring(0, 3)) { case "5.6": while (!repo.Retech.TradeKey_5_6_0_103.Enabled) { Thread.Sleep(100); } break; case "5.7": while (!repo.Retech.TradesF3_5_7_1_2.Enabled) { Thread.Sleep(100); } break; default: while (!repo.Retech.TradesF3_5_7_1_2.Enabled) { Thread.Sleep(100); } break; } } // Press the Trade Key if (Global.DomesticRegister) { Keyboard.Press("{F3}"); while (!Host.Local.TryFindSingle(repo.Retech.TradesTotalInfo.AbsolutePath.ToString(), out element)) { Thread.Sleep(100); } } else // International { repo.InternationalInsideSKUField.PressKeys("{F6}"); // Trades while (!repo.TradeIn.InternationalTradeSKUFIeld.Enabled) { Thread.Sleep(100); } } string[] TradeInSKUList = new string[100]; TradeInSKUList[0] = Global.S17Trade1; TradeInSKUList[1] = Global.S17Trade2; TradeInSKUList[2] = Global.S17Trade3; TradeInSKUList[3] = Global.S17Trade4; TradeInSKUList[4] = Global.S17Trade6; // 02-20-18 TradeInSKUList[5] = Global.S17Trade6; TradeInSKUList[6] = Global.S17Trade7; TradeInSKUList[7] = Global.S17Trade8; TradeInSKUList[8] = Global.S17Trade9; TradeInSKUList[9] = Global.S17Trade10; TradeInSKUList[10] = Global.S17Trade11; TradeInSKUList[11] = Global.S17Trade12; TradeInSKUList[12] = Global.S17Trade13; TradeInSKUList[13] = Global.S17Trade14; TradeInSKUList[14] = Global.S17Trade15; TradeInSKUList[15] = Global.S17Trade16; TradeInSKUList[16] = Global.S17Trade17; TradeInSKUList[17] = Global.S17Trade18; TradeInSKUList[18] = Global.S17Trade19; TradeInSKUList[19] = Global.S17Trade20; TradeInSKUList[20] = Global.S17Trade21; TradeInSKUList[21] = Global.S17Trade22; TradeInSKUList[22] = Global.S17Trade23; TradeInSKUList[23] = Global.S17Trade24; TradeInSKUList[24] = Global.S17Trade25; TradeInSKUList[25] = Global.S17Trade1; TradeInSKUList[26] = Global.S17Trade2; TradeInSKUList[27] = Global.S17Trade3; TradeInSKUList[28] = Global.S17Trade4; TradeInSKUList[29] = Global.S17Trade5; TradeInSKUList[30] = Global.S17Trade6; TradeInSKUList[31] = Global.S17Trade7; TradeInSKUList[32] = Global.S17Trade8; TradeInSKUList[33] = Global.S17Trade9; TradeInSKUList[34] = Global.S17Trade10; TradeInSKUList[35] = Global.S17Trade11; TradeInSKUList[36] = Global.S17Trade12; TradeInSKUList[37] = Global.S17Trade13; TradeInSKUList[38] = Global.S17Trade14; TradeInSKUList[39] = Global.S17Trade15; TradeInSKUList[40] = Global.S17Trade16; TradeInSKUList[41] = Global.S17Trade17; TradeInSKUList[42] = Global.S17Trade18; TradeInSKUList[43] = Global.S17Trade19; TradeInSKUList[44] = Global.S17Trade20; TradeInSKUList[45] = Global.S17Trade21; TradeInSKUList[46] = Global.S17Trade22; TradeInSKUList[47] = Global.S17Trade23; TradeInSKUList[48] = Global.S17Trade24; TradeInSKUList[49] = Global.S17Trade25; TradeInSKUList[50] = Global.S17Trade1; TradeInSKUList[51] = Global.S17Trade2; TradeInSKUList[52] = Global.S17Trade3; TradeInSKUList[53] = Global.S17Trade4; TradeInSKUList[54] = Global.S17Trade5; TradeInSKUList[55] = Global.S17Trade6; TradeInSKUList[56] = Global.S17Trade7; TradeInSKUList[57] = Global.S17Trade8; TradeInSKUList[58] = Global.S17Trade9; TradeInSKUList[59] = Global.S17Trade10; TradeInSKUList[60] = Global.S17Trade11; TradeInSKUList[61] = Global.S17Trade12; TradeInSKUList[62] = Global.S17Trade13; TradeInSKUList[63] = Global.S17Trade14; TradeInSKUList[64] = Global.S17Trade15; TradeInSKUList[65] = Global.S17Trade16; TradeInSKUList[66] = Global.S17Trade17; TradeInSKUList[67] = Global.S17Trade18; TradeInSKUList[68] = Global.S17Trade19; TradeInSKUList[69] = Global.S17Trade20; TradeInSKUList[70] = Global.S17Trade21; TradeInSKUList[71] = Global.S17Trade22; TradeInSKUList[72] = Global.S17Trade23; TradeInSKUList[73] = Global.S17Trade24; TradeInSKUList[74] = Global.S17Trade25; TradeInSKUList[75] = Global.S17Trade1; TradeInSKUList[76] = Global.S17Trade2; TradeInSKUList[77] = Global.S17Trade3; TradeInSKUList[78] = Global.S17Trade4; TradeInSKUList[79] = Global.S17Trade5; TradeInSKUList[80] = Global.S17Trade6; TradeInSKUList[81] = Global.S17Trade7; TradeInSKUList[82] = Global.S17Trade8; TradeInSKUList[83] = Global.S17Trade9; TradeInSKUList[84] = Global.S17Trade10; TradeInSKUList[85] = Global.S17Trade11; TradeInSKUList[86] = Global.S17Trade12; TradeInSKUList[87] = Global.S17Trade13; TradeInSKUList[88] = Global.S17Trade14; TradeInSKUList[89] = Global.S17Trade15; TradeInSKUList[90] = Global.S17Trade16; TradeInSKUList[91] = Global.S17Trade17; TradeInSKUList[92] = Global.S17Trade18; TradeInSKUList[93] = Global.S17Trade19; TradeInSKUList[94] = Global.S17Trade20; TradeInSKUList[95] = Global.S17Trade21; TradeInSKUList[96] = Global.S17Trade22; TradeInSKUList[97] = Global.S17Trade23; TradeInSKUList[98] = Global.S17Trade24; TradeInSKUList[99] = Global.S17Trade25; Global.LogText = @"Enter Trade SKUs"; WriteToLogFile.Run(); for (int soff = 0; soff <= Global.NumberOfTradesMinusOne; soff++) { if (Global.DomesticRegister) { // Press F1 add item Keyboard.Press("{F1}"); // Add Item F1 MystopwatchF1.Reset(); MystopwatchF1.Start(); while (!Host.Local.TryFindSingle(repo.AddItemTextInfo.AbsolutePath.ToString(), out element)) { Thread.Sleep(100); if (MystopwatchF1.ElapsedMilliseconds > 1000) { Keyboard.Press("{F1}"); // Add Item F1 Thread.Sleep(100); MystopwatchF1.Reset(); MystopwatchF1.Start(); } } // Enter SKUs repo.AddItemText.TextValue = TradeInSKUList[soff]; repo.RetechQuickEntryView.TxtWatermark.PressKeys("{Enter}"); } else // International { // for International SKU search for staring with PO in description // select * from SKU // Where Price >= 1 and description like 'PO%' // order by Price repo.TradeIn.InternationalTradeSKUFIeld.PressKeys("703620{Enter}"); } } if (!Global.DomesticRegister) { while (!repo.TradeIn.InternationalTradeSKUFIeld.Enabled) { Thread.Sleep(100); } repo.TradeIn.InternationalTradeSKUFIeld.PressKeys("{F12}"); // complete tradces } TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds); // Subtract overhead and store in Global.Q4StatLine Global.CurrentMetricDesciption = "Enter Trades"; Global.Module = "Enter Trades"; DumpStatsQ4.Run(); Global.CurrentMetricDesciption = "Module Total Time"; DumpStatsQ4.Run(); if (Global.DomesticRegister) { MystopwatchModuleTotal.Reset(); MystopwatchModuleTotal.Start(); MystopwatchQ4.Reset(); MystopwatchQ4.Start(); switch (Global.RetechVersion.Substring(0, 3)) { case "5.6": Global.LogText = @"Clicking on Purchase Mode F2"; WriteToLogFile.Run(); repo.Retech.Self.Focus(); Keyboard.Press("{F2}"); // Purchase Mode F2 Thread.Sleep(100); Global.LogText = @"Clicking Cointinue in Purchase Mode F6"; WriteToLogFile.Run(); repo.Retech.Self.Focus(); Keyboard.Press("{F6}"); // Continue in Purchase Mode F6 // repo.Retech.ContinueToPurchaseMode.Click(); // Continue in Purchase Mode F6 Thread.Sleep(100); Global.LogText = @"Waiting on CustomerInfoEditProfileIcon"; WriteToLogFile.Run(); while (!Host.Local.TryFindSingle(repo.LineItemCustomerEditorView.CustomerInfoEditProfileIcon_5_6_0_103Info.AbsolutePath.ToString(), out element)) { Thread.Sleep(100); } break; case "5.7": Global.LogText = @"Clicking on Trades F3 Continue F5 button"; WriteToLogFile.Run(); repo.Retech.ContinueButtonCommandTrade_5_7_1_2.Click(); Global.LogText = @"Waiting on CustomerInfoEditProfileIcon"; WriteToLogFile.Run(); while (!Host.Local.TryFindSingle(repo.EditProfileCommandInfo.AbsolutePath.ToString(), out element)) { Thread.Sleep(100); } break; default: Global.LogText = @"Clicking on Trades F3 Continue F5 button"; WriteToLogFile.Run(); repo.Retech.ContinueButtonCommandTrade_5_7_1_2.Click(); // Global.LogText = @"Waiting on CustomerInfoEditProfileIcon"; // WriteToLogFile.Run(); // while(!Host.Local.TryFindSingle(repo.CustomerEditorView.EditProfileCommand_5_7_1_2Info.AbsolutePath.ToString(), out element)) // { Thread.Sleep(100); } break; } TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds); // Subtract overhead and store in Global.Q4StatLine Global.CurrentMetricDesciption = "Select Purchase Mode"; Global.Module = "Select Purchase Mode"; DumpStatsQ4.Run(); Global.CurrentMetricDesciption = "Module Total Time"; DumpStatsQ4.Run(); // Start block comment for program flow change MystopwatchModuleTotal.Reset(); MystopwatchModuleTotal.Start(); MystopwatchQ4.Reset(); MystopwatchQ4.Start(); // ##### Start edit customer Global.LogText = @"F8 edit customer info"; WriteToLogFile.Run(); MystopwatchQ4.Reset(); MystopwatchQ4.Start(); // Edit the customer information // Keyboard.Press("{F8}"); // edit F8 while (!repo.EditProfileCommand.Enabled) { Thread.Sleep(100); } repo.EditProfileCommand.Click(); while (!repo.Gender.Enabled) { Thread.Sleep(100); } if (repo.Gender.SelectedItemText == null) { repo.Gender.SelectedItemText = "Female"; } if (repo.EyeColor.SelectedItemText == null) { repo.EyeColor.SelectedItemText = "Brown"; } if (repo.HairColor.SelectedItemText == null) { repo.HairColor.SelectedItemText = "Brown"; } Thread.Sleep(200); if (repo.CustomerEditorView1.DateOfBirth.TextValue == "") { repo.CustomerEditorView1.DateOfBirth.TextValue = "01/01/1940"; } if (repo.AlternatePhoneValue.TextValue == "") { repo.AlternatePhoneValue.TextValue = "5555555555"; } if (repo.StreetTwoValue.TextValue == "") { repo.StreetTwoValue.TextValue = "10 St"; } if (repo.CustInfoEmail.TextValue == "") { repo.CustInfoEmail.PressKeys("*****@*****.**"); } // ##### End edit customer Global.LogText = @"Save Customer F6"; WriteToLogFile.Run(); Keyboard.Press("{F6}"); // Save Thread.Sleep(200); TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds); // Subtract overhead and store in Global.Q4StatLine Global.CurrentMetricDesciption = "Edit Customer Information"; Global.Module = "Edit Customer Information"; DumpStatsQ4.Run(); Global.CurrentMetricDesciption = "Module Total Time"; DumpStatsQ4.Run(); // End block comment MystopwatchModuleTotal.Reset(); MystopwatchModuleTotal.Start(); MystopwatchQ4.Reset(); MystopwatchQ4.Start(); Global.LogText = @"F6 Continue to Purchase & Contine to pin pad"; WriteToLogFile.Run(); while (!Host.Local.TryFindSingle(repo.DialogShellView.WaitingForSignatureInfo.AbsolutePath.ToString(), out element)) { Keyboard.Press("{F6}"); // Continue in Purchase Mode F6 & Continue to Pin Pad F6 Thread.Sleep(500); } Global.LogText = @"Sign on Pin Pad"; WriteToLogFile.Run(); Thread.Sleep(50); repo.RetechPeripheralHostWindow.SignOnPinPad.Click(); Thread.Sleep(50); repo.RetechPeripheralHostWindow.AcceptOnPinPad.Click(); Thread.Sleep(50); repo.RetechPeripheralHostWindow.MinimizePinPad.Click(); // minimize cause always on top!!!! Thread.Sleep(50); repo.DialogShellView.SignatureAcceptedCommand.Click(); Thread.Sleep(100); if (Host.Local.TryFindSingle(repo.ContinueButtonCommandInfo.AbsolutePath.ToString(), out element)) { repo.ContinueButtonCommand.Click(); Thread.Sleep(100); } // Global.LogText = @"SpecialPriceOverride"; // WriteToLogFile.Run(); // ProductionIssueFunctions.SpecialPriceOverride(12.00m); TimeMinusOverhead.Run((float)MystopwatchModuleTotal.ElapsedMilliseconds); // Subtract overhead and store in Global.Q4StatLine Global.NowCustomerLookup = Global.AdjustedTime; Global.CurrentMetricDesciption = "Sign on Pin Pad"; Global.Module = "Sign on Pin Pad"; DumpStatsQ4.Run(); Global.CurrentMetricDesciption = "Module Total Time"; DumpStatsQ4.Run(); } // @#@#@# C H E C K O U T #@#@#@ Global.PayWithMethod = "Cash"; Checkout.Run(); TimeMinusOverhead.Run((float)MystopwatchTT.ElapsedMilliseconds); // Subtract overhead and store in Global.Q4StatLine Global.CurrentMetricDesciption = @"Scenario 47"; Global.Module = "Total Time"; DumpStatsQ4.Run(); // Write out metrics buffer WriteOutStatsQ4Buffer.Run(); Thread.Sleep(2000); }
public void Run() { //*****************Start Scenario 40 - Retech - Card Balance ****************** Mouse.DefaultMoveTime = 300; Keyboard.DefaultKeyPressTime = 100; Delay.SpeedFactor = 1.0; //Ranorex.Unknown element = null; Global.AbortScenario = false; // Uses same SKU and Customer for Scenarios 3, 4, and 5 RanorexRepository repo = new RanorexRepository(); fnTimeMinusOverhead TimeMinusOverhead = new fnTimeMinusOverhead(); fnDumpStatsQ4 DumpStatsQ4 = new fnDumpStatsQ4(); fnWriteToLogFile WriteToLogFile = new fnWriteToLogFile(); fnWriteToErrorFile WriteToErrorFile = new fnWriteToErrorFile(); FnWriteOutStatsQ4Buffer WriteOutStatsQ4Buffer = new FnWriteOutStatsQ4Buffer(); fnUpdatePALStatusMonitor UpdatePALStatusMonitor = new fnUpdatePALStatusMonitor(); FnCheckout Checkout = new FnCheckout(); FnStartTransaction StartTransaction = new FnStartTransaction(); FnEnterSKU EnterSKU = new FnEnterSKU(); FnProductionIssueFunctions ProductionIssueFunctions = new FnProductionIssueFunctions(); Global.CurrentScenario = 43; if (!Global.IndirectCall) { if (!Global.DoScenarioFlag[Global.CurrentScenario]) { return; } } Global.ScenarioExecuted = true; Global.RetechScenariosPerformed++; UpdatePALStatusMonitor.Run(); // Create new stopwatch Stopwatch MystopwatchTT = new Stopwatch(); MystopwatchTT.Reset(); MystopwatchTT.Start(); Stopwatch MystopwatchF1 = new Stopwatch(); Stopwatch MystopwatchTotal = new Stopwatch(); MystopwatchTotal.Reset(); MystopwatchTotal.Start(); Stopwatch MystopwatchQ4 = new Stopwatch(); Stopwatch MystopwatchModuleTotal = new Stopwatch(); Global.LogText = @"---> fnDoScenario43 Iteration: " + Global.CurrentIteration; WriteToLogFile.Run(); Report.Log(ReportLevel.Info, "Scenario 40 IN", "Iteration: " + Global.CurrentIteration, new RecordItemIndex(0)); // Start // Check card balance MystopwatchQ4.Reset(); MystopwatchQ4.Start(); repo.ShellView.CardBalanceButton.Click(); Thread.Sleep(100); repo.CardBalanceInquiryView.AccountNumber.TextValue = "3876608052056"; repo.CardBalanceInquiryView.AccountNumber.PressKeys("{Enter}"); while (!repo.CardBalanceInquiryView.PowerUpRewardsCardBalanceText.Visible) { Thread.Sleep(1000); } TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds); // Subtract overhead and store in Global.Q4StatLine Global.CurrentMetricDesciption = "Check Card Balance"; Global.Module = "Check Card Balance"; DumpStatsQ4.Run(); Global.CurrentMetricDesciption = "Module Total Time"; DumpStatsQ4.Run(); Thread.Sleep(2000); Keyboard.Press("{Escape}"); TimeMinusOverhead.Run((float)MystopwatchTT.ElapsedMilliseconds); // Subtract overhead and store in Global.Q4StatLine Global.CurrentMetricDesciption = @"Scenario 43"; Global.Module = "Total Time"; DumpStatsQ4.Run(); if (!Global.AbortScenario) { // Write out metrics buffer WriteOutStatsQ4Buffer.Run(); } else { Global.Q4StatBuffer = ""; } Global.LogText = "<--- fnDoScenario43 Iteration: " + Global.CurrentIteration; WriteToLogFile.Run(); Report.Log(ReportLevel.Info, "Scenario 43 OUT", "Iteration: " + Global.CurrentIteration, new RecordItemIndex(0)); Thread.Sleep(2000); // ***********End Scenario 43***************** }
public void Run() { //*****************Start Scenario 40 - Retech - PRP ****************** Mouse.DefaultMoveTime = 300; Keyboard.DefaultKeyPressTime = 100; Delay.SpeedFactor = 1.0; //Ranorex.Unknown element = null; Global.AbortScenario = false; // Uses same SKU and Customer for Scenarios 3, 4, and 5 RanorexRepository repo = new RanorexRepository(); fnTimeMinusOverhead TimeMinusOverhead = new fnTimeMinusOverhead(); fnDumpStatsQ4 DumpStatsQ4 = new fnDumpStatsQ4(); fnWriteToLogFile WriteToLogFile = new fnWriteToLogFile(); fnWriteToErrorFile WriteToErrorFile = new fnWriteToErrorFile(); FnWriteOutStatsQ4Buffer WriteOutStatsQ4Buffer = new FnWriteOutStatsQ4Buffer(); fnUpdatePALStatusMonitor UpdatePALStatusMonitor = new fnUpdatePALStatusMonitor(); FnCheckout Checkout = new FnCheckout(); FnStartTransaction StartTransaction = new FnStartTransaction(); FnEnterSKU EnterSKU = new FnEnterSKU(); FnProductionIssueFunctions ProductionIssueFunctions = new FnProductionIssueFunctions(); Global.CurrentScenario = 42; if (!Global.IndirectCall) { if (!Global.DoScenarioFlag[Global.CurrentScenario]) { return; } } Global.ScenarioExecuted = true; Global.RetechScenariosPerformed++; UpdatePALStatusMonitor.Run(); // Create new stopwatch Stopwatch MystopwatchTT = new Stopwatch(); MystopwatchTT.Reset(); MystopwatchTT.Start(); Stopwatch MystopwatchF1 = new Stopwatch(); Stopwatch MystopwatchTotal = new Stopwatch(); MystopwatchTotal.Reset(); MystopwatchTotal.Start(); Stopwatch MystopwatchQ4 = new Stopwatch(); Stopwatch MystopwatchModuleTotal = new Stopwatch(); Global.LogText = @"---> fnDoScenario42 Iteration: " + Global.CurrentIteration; WriteToLogFile.Run(); Report.Log(ReportLevel.Info, "Scenario 40 IN", "Iteration: " + Global.CurrentIteration, new RecordItemIndex(0)); // Start MystopwatchModuleTotal.Reset(); MystopwatchModuleTotal.Start(); StartTransaction.Run(); MystopwatchModuleTotal.Reset(); MystopwatchModuleTotal.Start(); Global.LogText = @"Add Item"; WriteToLogFile.Run(); MystopwatchQ4.Reset(); MystopwatchQ4.Start(); // Add PRP EnterPRPSKU(); /* * // Price override * MystopwatchQ4.Reset(); * MystopwatchQ4.Start(); * * string TextAmt = repo.Retech.NetTotal.TextValue.Substring(1,repo.Retech.NetTotal.TextValue.Length - 1); * string TextTotAmt = repo.Retech.TotalPurchases.TextValue.Substring(1,repo.Retech.TotalPurchases.TextValue.Length - 1); * decimal DecAmt = Convert.ToDecimal(TextAmt); * decimal DecTotAmt = Convert.ToDecimal(TextTotAmt); * decimal UseAmt = DecTotAmt - DecAmt + 1.00m; * Global.SpecialPayThisAmount = Convert.ToString(UseAmt); * * ProductionIssueFunctions.SpecialPriceOverride(1.00m); // lower the price so not so many code F4 alerts * * TimeMinusOverhead.Run((float) MystopwatchQ4.ElapsedMilliseconds); // Subtract overhead and store in Global.Q4StatLine * Global.CurrentMetricDesciption = "Price Overide"; * Global.Module = "Price Overide"; * DumpStatsQ4.Run(); * Global.CurrentMetricDesciption = "Module Total Time"; * DumpStatsQ4.Run(); */ // @#@#@# C H E C K O U T #@#@#@ Global.PayWithMethod = "Cash"; Checkout.Run(); TimeMinusOverhead.Run((float)MystopwatchTT.ElapsedMilliseconds); // Subtract overhead and store in Global.Q4StatLine Global.CurrentMetricDesciption = @"Scenario 42"; Global.Module = "Total Time"; DumpStatsQ4.Run(); if (!Global.AbortScenario) { // Write out metrics buffer WriteOutStatsQ4Buffer.Run(); } else { Global.Q4StatBuffer = ""; } Global.LogText = "<--- fnDoScenario42 Iteration: " + Global.CurrentIteration; WriteToLogFile.Run(); Report.Log(ReportLevel.Info, "Scenario 42 OUT", "Iteration: " + Global.CurrentIteration, new RecordItemIndex(0)); Thread.Sleep(2000); // ***********End Scenario 42***************** }
public void Run() { //*****************Start Scenario 37 - Retech - Reserve Pickup ****************** Mouse.DefaultMoveTime = 300; Keyboard.DefaultKeyPressTime = 100; Delay.SpeedFactor = 1.0; Ranorex.Unknown element = null; Global.AbortScenario = false; // Uses same SKU and Customer for Scenarios 3, 4, and 5 RanorexRepository repo = new RanorexRepository(); fnTimeMinusOverhead TimeMinusOverhead = new fnTimeMinusOverhead(); fnDumpStatsQ4 DumpStatsQ4 = new fnDumpStatsQ4(); fnWriteToLogFile WriteToLogFile = new fnWriteToLogFile(); fnWriteToErrorFile WriteToErrorFile = new fnWriteToErrorFile(); FnWriteOutStatsQ4Buffer WriteOutStatsQ4Buffer = new FnWriteOutStatsQ4Buffer(); fnUpdatePALStatusMonitor UpdatePALStatusMonitor = new fnUpdatePALStatusMonitor(); FnCheckout Checkout = new FnCheckout(); FnStartTransaction StartTransaction = new FnStartTransaction(); FnEnterSKU EnterSKU = new FnEnterSKU(); FnProductionIssueFunctions ProductionIssueFunctions = new FnProductionIssueFunctions(); Global.CurrentScenario = 37; if (!Global.IndirectCall) { if (!Global.DoScenarioFlag[Global.CurrentScenario]) { return; } } Global.ScenarioExecuted = true; //string ReservePickupPhoneNumber = "9727651234"; string ReservePickupPhoneNumber = "406254111" + Global.RegisterNumber; Global.RetechScenariosPerformed++; UpdatePALStatusMonitor.Run(); // Create new stopwatch Stopwatch MystopwatchTT = new Stopwatch(); MystopwatchTT.Reset(); MystopwatchTT.Start(); Stopwatch MystopwatchF1 = new Stopwatch(); Stopwatch MystopwatchTotal = new Stopwatch(); MystopwatchTotal.Reset(); MystopwatchTotal.Start(); Stopwatch MystopwatchQ4 = new Stopwatch(); Stopwatch MystopwatchModuleTotal = new Stopwatch(); Global.LogText = @"---> fnDoScenario37 Iteration: " + Global.CurrentIteration; WriteToLogFile.Run(); Report.Log(ReportLevel.Info, "Scenario 37 IN", "Iteration: " + Global.CurrentIteration, new RecordItemIndex(0)); // Start MystopwatchModuleTotal.Reset(); MystopwatchModuleTotal.Start(); //#### Reserve the item StartTransaction.Run(); MystopwatchQ4.Reset(); MystopwatchQ4.Start(); TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds); // Subtract overhead and store in Global.Q4StatLine Global.CurrentMetricDesciption = "Start Transaction"; Global.Module = "Reserve:"; DumpStatsQ4.Run(); MystopwatchQ4.Reset(); MystopwatchQ4.Start(); Global.LogText = @"Reserve Item"; WriteToLogFile.Run(); repo.Retech.FindAProductCtrlPlusS.Click("19;5"); // click in search box Thread.Sleep(100); Keyboard.Press("{F2}"); // Upcoming Thread.Sleep(100); // ######################################################## // Line item: repo.RetechQuickSearchView.SearchResultsView.ListBoxItem; // Price: repo.RetechQuickSearchView.SearchResultsView.NewPrice; // PreOrder: repo.RetechQuickSearchView.SearchResultsView.PreOrder; // SKU: repo.RetechQuickSearchView.SearchResultsView.NewSku; // Number of items in list: repo.RetechQuickSearchView.DisplayedCount; // string SearchCount = repo.RetechQuickSearchView.DisplayedCount.TextValue; // NumberRecordsFound = Convert.ToInt32(SearchCount.Substring(0,SearchCount.IndexOf(" "))); //repo.RetechQuickSearchView.FirstPreOrderItem.Click(); // Click on first pre-order item bool PreOrderFound = false; Global.LogText = @"Searching for PreOrder item in list"; WriteToLogFile.Run(); while (!PreOrderFound) { // Search for and select the first PRE-ORDER item > $10.00 List list = "/form[@automationid='QuickSearchView']/?/?/list[@automationid='SearchResultsView']"; IList <ListItem> items = list.Items; foreach (ListItem EachItem in list.Items) { string TextAmt = EachItem.Children[1].Children[0].GetAttributeValue <string>("Caption"); // Price TextAmt = TextAmt.Substring(1, TextAmt.Length - 1); // remove $ decimal DecAmt = Convert.ToDecimal(TextAmt); // convert to decimal string TheCaption = EachItem.Children[1].Children[1].GetAttributeValue <string>("Caption"); // Item type looking for PRE-ORDER if (DecAmt > 10.00m && TheCaption == "PRE-ORDER") { EachItem.Click(); PreOrderFound = true; break; } } if (!PreOrderFound) { // page down on list of items repo.ShellView.SearchResultsView.Click("627;44"); Delay.Milliseconds(200); Keyboard.Press("{Next}"); } } Thread.Sleep(100); Keyboard.Press("{Escape}"); // Escape from search box Thread.Sleep(100); // Process age verification if exists if (Host.Local.TryFindSingle(repo.Retech.AgeVerifiedCommand1Info.AbsolutePath.ToString(), out element)) { repo.Retech.AgeVerifiedCommand1.Click(); Thread.Sleep(100); } // Get the Initial Deposit amout from the screen Global.SpecialPayThisAmount = repo.Retech.DepositText.TextValue.Substring(1); TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds); // Subtract overhead and store in Global.Q4StatLine Global.CurrentMetricDesciption = "Reserve Item"; Global.Module = "Reserve:"; DumpStatsQ4.Run(); // Select Customer MystopwatchQ4.Reset(); MystopwatchQ4.Start(); repo.Retech.SelectCustomer.Click(); Thread.Sleep(100); repo.Retech.ButtonContent.Click("105;10"); // Search for Customer Thread.Sleep(100); // repo.RetechFindCustomerView.CustomerLookupTxt.PressKeys("9727651234{Enter}"); 12-13-18 repo.RetechFindCustomerView.CustomerLookupTxt.TextValue = ReservePickupPhoneNumber; repo.RetechFindCustomerView.Self.PressKeys("{Enter}"); while (!Host.Local.TryFindSingle(repo.RetechFindCustomerView.ListBoxItemInfo.AbsolutePath.ToString(), out element)) { Thread.Sleep(100); } repo.RetechFindCustomerView.ListBoxItem.Click(); // accept customer Thread.Sleep(500); while (Host.Local.TryFindSingle(repo.RetechFindCustomerView.ListBoxItemInfo.AbsolutePath.ToString(), out element)) { Thread.Sleep(100); } // Process continue 1 if (Host.Local.TryFindSingle(repo.Retech.ContinueButtonCommand1Info.AbsolutePath.ToString(), out element)) { repo.Retech.ContinueButtonCommand1.Click(); Thread.Sleep(200); } // Process continue 2 if (Host.Local.TryFindSingle(repo.ContinueButtonCommandInfo.AbsolutePath.ToString(), out element)) { repo.ContinueButtonCommand.Click(); Thread.Sleep(200); } // Process SMS text message - not interested if (Host.Local.TryFindSingle(repo.Retech.NotInterestedCommandInfo.AbsolutePath.ToString(), out element)) { repo.Retech.NotInterestedCommand.Click(); Thread.Sleep(200); } TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds); // Subtract overhead and store in Global.Q4StatLine Global.CurrentMetricDesciption = "Select Customer"; Global.Module = "Reserve:"; DumpStatsQ4.Run(); // Check for Product Replacement Plan if (Host.Local.TryFindSingle(repo.Retech.ProductReplacementContinueInfo.AbsolutePath.ToString(), out element)) { repo.Retech.ProductReplacementContinue.Click(); Thread.Sleep(200); } if (Host.Local.TryFindSingle(repo.Retech.ContinueButtonCommand1Info.AbsolutePath.ToString(), out element)) { repo.Retech.ContinueButtonCommand1.Click(); Thread.Sleep(100); } if (Host.Local.TryFindSingle(repo.ContinueButtonCommandInfo.AbsolutePath.ToString(), out element)) { repo.ContinueButtonCommand.Click(); Thread.Sleep(100); } // Checkout and pay required deposit MystopwatchQ4.Reset(); MystopwatchQ4.Start(); Global.SpecialCheckingOut = false; Global.PayWithMethod = "Cash"; ProductionIssueFunctions.SpecialPreCheckOut(); ProductionIssueFunctions.SpecialCheckForCodeF4Alert(); repo.RetechLoginView.TxtPassword.PressKeys("{Escape}"); // initial sign on screen TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds); // Subtract overhead and store in Global.Q4StatLine Global.CurrentMetricDesciption = "Pay deposit and checkout"; Global.Module = "Reserve:"; DumpStatsQ4.Run(); TimeMinusOverhead.Run((float)MystopwatchModuleTotal.ElapsedMilliseconds); // Subtract overhead and store in Global.Q4StatLine Global.NowCustomerLookup = Global.AdjustedTime; Global.CurrentMetricDesciption = "Module Total Time"; Global.Module = "Reserve:"; DumpStatsQ4.Run(); MystopwatchModuleTotal.Reset(); MystopwatchModuleTotal.Start(); // ##### Now do the pickup MystopwatchQ4.Reset(); MystopwatchQ4.Start(); StartTransaction.Run(); TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds); // Subtract overhead and store in Global.Q4StatLine Global.CurrentMetricDesciption = "Start Transaction 2"; Global.Module = "Pick Up:"; DumpStatsQ4.Run(); MystopwatchQ4.Reset(); MystopwatchQ4.Start(); // repo.Retech.FindCustomerTextBox.PressKeys("9727651234{Enter}"); // get the customer 12-13-18 repo.Retech.FindCustomerTextBox.TextValue = ReservePickupPhoneNumber; repo.Retech.FindCustomerTextBox.PressKeys("{Enter}"); while (!Host.Local.TryFindSingle(repo.RetechFindCustomerView.ListBoxItemInfo.AbsolutePath.ToString(), out element)) { Thread.Sleep(100); } repo.RetechFindCustomerView.ListBoxItem.Click(); // accept customer while (Host.Local.TryFindSingle(repo.RetechFindCustomerView.ListBoxItemInfo.AbsolutePath.ToString(), out element)) { Thread.Sleep(100); } // View customer details to get reserve item repo.Retech.ShowCustomerDetails.Click(); while (!Host.Local.TryFindSingle(repo.CustomerDetailsView.OpenReservationListItemControlInfo.AbsolutePath.ToString(), out element)) { Thread.Sleep(100); } // Get the reserved item repo.CustomerDetailsView.OpenReservationListItemControl.Click(); // Click on first reserved item repo.CustomerDetailsView.PickupReservation.Click(); Thread.Sleep(100); repo.OptionSelectorView.StreetDatedProductConfirm.Click(); // Yes sell this street dated itme Thread.Sleep(100); Keyboard.Press("{Escape}"); if (Host.Local.TryFindSingle(repo.ContinueButtonCommandInfo.AbsolutePath.ToString(), out element)) { repo.ContinueButtonCommand.Click(); Thread.Sleep(200); } TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds); // Subtract overhead and store in Global.Q4StatLine Global.CurrentMetricDesciption = "Get customer and pick up item"; Global.Module = "Pick Up:"; DumpStatsQ4.Run(); /* * // Price override * MystopwatchQ4.Reset(); * MystopwatchQ4.Start(); * * ProductionIssueFunctions.SpecialPriceOverride(1.00m); // lower the price so not so many code F4 alerts * * TimeMinusOverhead.Run((float) MystopwatchQ4.ElapsedMilliseconds); // Subtract overhead and store in Global.Q4StatLine * Global.CurrentMetricDesciption = "Price Overide"; * Global.Module = "Pick Up:"; * DumpStatsQ4.Run(); */ // Process age verification if exists if (Host.Local.TryFindSingle(repo.Retech.AgeVerifiedCommand1Info.AbsolutePath.ToString(), out element)) { repo.Retech.AgeVerifiedCommand1.Click(); Thread.Sleep(100); } // Process continue 2 if (Host.Local.TryFindSingle(repo.ContinueButtonCommandInfo.AbsolutePath.ToString(), out element)) { repo.ContinueButtonCommand.Click(); Thread.Sleep(200); } // Now pickup and pay total for item MystopwatchQ4.Reset(); MystopwatchQ4.Start(); Global.SpecialCheckingOut = false; Global.PayWithMethod = "Cash"; Global.SpecialPayThisAmount = "All"; repo.Retech.DataContextShowCheckoutViewCommand.Click(); ProductionIssueFunctions.SpecialPreCheckOut(); ProductionIssueFunctions.SpecialCheckForCodeF4Alert(); repo.RetechLoginView.TxtPassword.PressKeys("{Escape}"); // initial sign on screen TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds); // Subtract overhead and store in Global.Q4StatLine Global.CurrentMetricDesciption = "Pay for picked up item"; Global.Module = "Pick Up:"; DumpStatsQ4.Run(); TimeMinusOverhead.Run((float)MystopwatchModuleTotal.ElapsedMilliseconds); // Subtract overhead and store in Global.Q4StatLine Global.NowCustomerLookup = Global.AdjustedTime; Global.CurrentMetricDesciption = "Module Total Time"; Global.Module = "Pick Up:"; DumpStatsQ4.Run(); TimeMinusOverhead.Run((float)MystopwatchTT.ElapsedMilliseconds); // Subtract overhead and store in Global.Q4StatLine Global.CurrentMetricDesciption = @"Scenario 37"; Global.Module = "Total Time"; DumpStatsQ4.Run(); // Write out metrics buffer WriteOutStatsQ4Buffer.Run(); Global.LogText = "<--- fnDoScenario37 Iteration: " + Global.CurrentIteration; WriteToLogFile.Run(); Report.Log(ReportLevel.Info, "Scenario 37 OUT", "Iteration: " + Global.CurrentIteration, new RecordItemIndex(0)); Thread.Sleep(2000); // ***********End Scenario 37***************** }