Exemple #1
0
        public void Run()
        {       //**************Start  fnScenario47 High volume trade 20 items**********************
            Mouse.DefaultMoveTime        = 300;
            Keyboard.DefaultKeyPressTime = 100;
            Delay.SpeedFactor            = 1.0;


            Global.CurrentScenario = 47;
            Global.AbortScenario   = false;

            if (!Global.IndirectCall)
            {
                if (!Global.DoScenarioFlag[Global.CurrentScenario])
                {
                    return;
                }
            }

            Global.ScenarioExecuted = true;

            Global.NumberOfTradesMinusOne = 4;  // Coded for 4 and 99

            FnCommon47and48  Common47and48  = new FnCommon47and48();
            fnWriteToLogFile WriteToLogFile = new fnWriteToLogFile();

            Global.LogText = @"---> fnDoScenario47 Start Transaction Iteration: " + Global.CurrentIteration;
            WriteToLogFile.Run();
            Report.Log(ReportLevel.Info, "Scenario 47 IN", "Iteration: " + Global.CurrentIteration, new RecordItemIndex(0));

            Common47and48.Run();

            Global.LogText = "<--- fnDoScenario47 Iteration: " + Global.CurrentIteration;
            WriteToLogFile.Run();
            Report.Log(ReportLevel.Info, "Scenario 47 OUT", "Iteration: " + Global.CurrentIteration, new RecordItemIndex(0));
        }
Exemple #2
0
        //
        // E N T E R   C U S T O M E R  ##############################################################################
        //
        public void SpecialEnterCustomer()
        {
            RanorexRepository repo           = new RanorexRepository();
            fnWriteToLogFile  WriteToLogFile = new fnWriteToLogFile();

            Ranorex.Unknown element = null;

            Global.LogText = @"Enter Special Customer Phone Number";

            repo.Retech.FindCustomerTextBox.TextValue = Global.SpecialCustomerPhoneNumber;
            repo.Retech.FindCustomerTextBox.PressKeys("{Enter}");
            Thread.Sleep(100);

            while (!repo.RetechFindCustomerView.CustomerSearchCriteria.Enabled)
            {
                Thread.Sleep(100);
            }

            repo.RetechFindCustomerView.ListBoxItem.Click();

            while (Host.Local.TryFindSingle(repo.RetechFindCustomerView.ListBoxItemInfo.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);
            }
        }
Exemple #3
0
        public void Run()
        {
            Mouse.DefaultMoveTime        = 300;
            Keyboard.DefaultKeyPressTime = 100;
            Delay.SpeedFactor            = 1.0;

            RanorexRepository repo           = new RanorexRepository();
            fnWriteToLogFile  WriteToLogFile = new fnWriteToLogFile();

            Global.LogFileIndentLevel++;
            Global.LogText = "IN FnWriteOutStatsQ4Buffer";
            WriteToLogFile.Run();

            // Write out metrics buffer
            // bool OpenFileForOutput = false;
            bool OpenFileForAppend = true;

            using (System.IO.StreamWriter file = new System.IO.StreamWriter(Global.StatsFileNameQ4, OpenFileForAppend))
            {
                file.Write(Global.Q4StatBuffer);
            }

            Global.Q4StatBuffer = "";

            int aa = Global.ScenariosToday;

            Global.ScenariosToday++;                    // PAL Status Monitor
            aa = Global.ScenariosToday;

            Global.LogText = "OUT FnWriteOutStatsQ4Buffer";
            WriteToLogFile.Run();
            Global.LogFileIndentLevel--;
        }
Exemple #4
0
        public void Run()
        {       // Wait for xx of yy to be all numeric, whick indicates that search is complete
            // Wait for xx of yy to only show yy then return yy in Global.RecordsFoundString and Global.RecordsFound
            Mouse.DefaultMoveTime        = 300;
            Keyboard.DefaultKeyPressTime = 100;
            Delay.SpeedFactor            = 1.0;

            fnWriteToLogFile WriteToLogFile = new fnWriteToLogFile();

            Global.LogText = "IN fnWaitForItemSearchToFinish";
            WriteToLogFile.Run();
            Global.LogFileIndentLevel++;

            RanorexRepository repo = new RanorexRepository();

            // Wait for xx of yy to be all numeric, whick indicates that search is complete
            while (!Regex.IsMatch(repo.ItemSearch.RawTextXXofYY.RawTextValue, @"^\d+$"))
            {
                Thread.Sleep(100);
            }

            Global.RecordsFoundString = repo.ItemSearch.RawTextXXofYY.RawTextValue;
            Global.RecordsFound       = Convert.ToInt32(repo.ItemSearch.RawTextXXofYY.RawTextValue);

            Global.LogFileIndentLevel--;
            Global.LogText = "OUT fnWaitForItemSearchToFinish";
            WriteToLogFile.Run();
        }
Exemple #5
0
        //
        // S T A R T   T R A N S A C T I O N ##############################################################################
        //
        public void SpecialStartTransaction()
        {
            RanorexRepository  repo             = new RanorexRepository();
            fnWriteToLogFile   WriteToLogFile   = new fnWriteToLogFile();
            FnStartTransaction StartTransaction = new FnStartTransaction();

            Global.LogText = @"Start Transaction";
            WriteToLogFile.Run();
            StartTransaction.Run();
        }
Exemple #6
0
        //
        // E N T E R   S K U S  ################################################################################
        //
        public void SpecialPurchaseSKUs()
        {
            fnWriteToLogFile WriteToLogFile = new fnWriteToLogFile();

            Global.LogText = @"Starting Purchases";
            WriteToLogFile.Run();

            Global.SpecialReturningSKUs = false;
            SpecialEnterSKUs();
        }
Exemple #7
0
        //
        // F I N A L   C H E C K   O U T ##############################################################################
        //
        public void SpecialFinalCheckOut()
        {
            RanorexRepository repo           = new RanorexRepository();
            fnWriteToLogFile  WriteToLogFile = new fnWriteToLogFile();

            Ranorex.Unknown element = null;

            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
                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.EditProfileCommandInfo.AbsolutePath.ToString(), out element))
                {
                    Thread.Sleep(100);
                }
                break;
            }
        }
Exemple #8
0
        //
        // 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();
        }
Exemple #9
0
        //#####################################################################################
        //	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);
            }
        }
        /// <summary>
        /// Performs the playback of actions in this module.
        /// </summary>
        /// <remarks>You should not call this method directly, instead pass the module
        /// instance to the <see cref="TestModuleRunner.Run(ITestModule)"/> method
        /// that will in turn invoke this method.</remarks>
        void ITestModule.Run()
        {
            Mouse.DefaultMoveTime        = 300;
            Keyboard.DefaultKeyPressTime = 100;
            Delay.SpeedFactor            = 1.0;

            RanorexRepository repo           = new RanorexRepository();
            fnWriteToLogFile  WriteToLogFile = new fnWriteToLogFile();

            Global.PhoneMaxOffset            = 0;
            Global.TotalNumberOfPhoneNumbers = 0;

            using (System.IO.StreamReader PhoneNumberFile = new System.IO.StreamReader(Global.Register1DriveLetter + @":\" + Global.AutomationFileDirectory + @"\Input\PhoneNumbers.csv"))
            {
                Global.LogText = "IN fnReadPhoneNumbersFromCSVFile";
                WriteToLogFile.Run();
                Global.LogFileIndentLevel++;

                int    PhoneOffset = 1;
                string InputLine   = "";
                InputLine = PhoneNumberFile.ReadLine();                 // Skip first line it is the header

                for (PhoneOffset = 0; InputLine != null; PhoneOffset++)
                {
                    InputLine = PhoneNumberFile.ReadLine();
                    if (InputLine != null)
                    {                           // Loyalty ("Pro", "Basic") Non-Loyalty ("NonMemberGenesis", "NonMemberProfile") or "" for all
                        string[] Numbers = InputLine.Split(',');

                        Global.PhoneArrayLoyaltyPro[PhoneOffset]                 = Numbers[0];
                        Global.PhoneArrayLoyaltyProCard[PhoneOffset]             = Numbers[1];
                        Global.PhoneArrayLoyaltyBasic[PhoneOffset]               = Numbers[2];
                        Global.PhoneArrayLoyaltyBasicCard[PhoneOffset]           = Numbers[3];
                        Global.PhoneArrayNonLoyaltyNonMemberGenesis[PhoneOffset] = Numbers[4];
                        Global.PhoneArrayNonLoyaltyNonMemberProfile[PhoneOffset] = Numbers[5];

                        Global.PhoneMaxOffset            = PhoneOffset;
                        Global.TotalNumberOfPhoneNumbers = 4 * (Global.PhoneMaxOffset + 1);
                    }
                }
                PhoneNumberFile.Close();
            }


            Global.LogFileIndentLevel--;
            Global.LogText = "OUT fnReadPhoneNumbersFromCSVFile";
            WriteToLogFile.Run();
        }
        /// <summary>
        /// Performs the playback of actions in this module.
        /// </summary>
        /// <remarks>You should not call this method directly, instead pass the module
        /// instance to the <see cref="TestModuleRunner.Run(ITestModule)"/> method
        /// that will in turn invoke this method.</remarks>
        void ITestModule.Run()
        {
            Mouse.DefaultMoveTime        = 300;
            Keyboard.DefaultKeyPressTime = 100;
            Delay.SpeedFactor            = 1.0;

            RanorexRepository repo           = new RanorexRepository();
            fnWriteToLogFile  WriteToLogFile = new fnWriteToLogFile();

            Global.PhoneMaxOffset           = 0;
            Global.TotalNumberSimpleOneSKUs = 0;

            using (System.IO.StreamReader SimpleOneSKUFile = new System.IO.StreamReader(Global.Register1DriveLetter + @":\" + Global.AutomationFileDirectory + @"\Input\SimpleOneSKUs.csv"))
            {
                Global.LogText = "IN fnReadSimpleOneSKUsFromCSVFile";
                WriteToLogFile.Run();
                Global.LogFileIndentLevel++;

                int    SKUOffset = 1;
                string InputLine = "";
                InputLine = SimpleOneSKUFile.ReadLine();                 // Skip first line it is the header

                for (SKUOffset = 0; InputLine != null; SKUOffset++)
                {
                    InputLine = SimpleOneSKUFile.ReadLine();
                    if (InputLine != null)
                    {
                        string[] Numbers = InputLine.Split(',');

                        Global.SimpleOneSku[SKUOffset]            = Numbers[0];
                        Global.SimpleOneSkuDescription[SKUOffset] = Numbers[1];

                        Global.TotalNumberSimpleOneSKUs = SKUOffset;
                    }
                }
                SimpleOneSKUFile.Close();
            }

            // Initialize first SKU offset
            Global.SimpleOneSKUsOffset = Convert.ToInt32(Global.RegisterNumber) - 1;

            Global.LogFileIndentLevel--;
            Global.LogText = "OUT fnReadSimpleOneSKUsFromCSVFile";
            WriteToLogFile.Run();
        }
Exemple #12
0
        //
        // C ON V E R T   T E X T   T O   D E C I M  A L  ################################################################################
        //
        public decimal SpecialConvertTextAmountToReturnToFloat(string InputText)
        {
            fnWriteToLogFile WriteToLogFile = new fnWriteToLogFile();

            Global.LogText = @"Starting SpecialConvertTextAmountToReturnToFloat";
            WriteToLogFile.Run();

            if (InputText.Substring(0, 1) == "(")
            {
                InputText = InputText.Substring(1, InputText.Length - 2);
            }
            if (InputText.Substring(0, 1) == "$")
            {
                InputText = InputText.Substring(1, InputText.Length - 1);
            }

            return(Convert.ToDecimal(InputText));
        }
Exemple #13
0
        // ####################################################
        private void EndScenarioCleanup()
        {
            Ranorex.Unknown   element        = null;
            RanorexRepository repo           = new RanorexRepository();
            fnWriteToLogFile  WriteToLogFile = new fnWriteToLogFile();

            if (Global.DomesticRegister) // Domestic Store
            {                            // Domestic Hanging Notification Bar 9/24/18
                if (Host.Local.TryFindSingle(repo.HOPSOverlayView.InstructionsLabelInfo.AbsolutePath.ToString(), out element))
                {
                    repo.HOPSOverlayView.ExpandButton.Click();
                }
            }
            while (File.Exists("c:\\PAL\\pause"))
            {
                Global.LogText = "Pause file - pausing";
                WriteToLogFile.Run();
                Thread.Sleep(60000);
            }

            if (Host.Local.TryFindSingle(repo.PickupAtStorePopupNotifier.PickupAtStoreRequestPopUpInfo.AbsolutePath.ToString(), out element))
            {
                Report.Log(ReportLevel.Info, "Mouse", "Mouse Left Down item 'PopupNotifierView' at 434;30.", repo.PickupAtStorePopupNotifier.SelfInfo, new RecordItemIndex(0));
                repo.PickupAtStorePopupNotifier.Self.MoveTo("434;30");
                Keyboard.Press("{ENTER}");
                //Mouse.ButtonDown(System.Windows.Forms.MouseButtons.Left);
                Delay.Milliseconds(200);
                // repo.PopupNotifierView.Self.Click();
                Thread.Sleep(100);
            }

            Global.IndirectCall      = false;                // 12-3-18
            Global.CurrentSKUOveride = false;                // 12-3-18
            Global.DoingCollectible  = false;                // 12-3/18

            if (Global.ScenarioExecuted & !Global.SwitchPauseBetweenScenariosOff)
            {
                Global.LogText = "Pausing in between scenarios";
                WriteToLogFile.Run();
                Thread.Sleep(45000);
            }
        }
Exemple #14
0
        public void Run()
        {
            Mouse.DefaultMoveTime        = 300;
            Keyboard.DefaultKeyPressTime = 100;
            Delay.SpeedFactor            = 1.0;

            RanorexRepository repo = RanorexRepository.Instance;

            fnWriteToLogFile WriteToLogFile = new fnWriteToLogFile();
            Stopwatch        MystopwatchCK  = new Stopwatch();

            Global.LogText = "IN fnBrowserGoHome";
            WriteToLogFile.Run();
            Global.LogFileIndentLevel++;

            repo.POSBrowserV25StorePortal.Self.Focus();
//			repo.POSBrowserV25StorePortal.POSBrowserV27RIStorePortal.Click();  // click on browser to make sure in focus
            Keyboard.Press("{F6}");

            repo.POSBrowserV25StorePortal.ExitEscInfo.SearchTimeout = 60000;
            MystopwatchCK.Reset();
            MystopwatchCK.Start();
            while (!repo.StorePortal.QAPOSReCommerce.Enabled)
            {
                Thread.Sleep(100);

                if (MystopwatchCK.ElapsedMilliseconds > 6000)
                {
                    repo.POSBrowserV25StorePortal.POSBrowserV27RIStorePortal.Click();                      // click on browser to make sure in focus
                    Keyboard.Press("{F6}");
                    Thread.Sleep(100);
                    MystopwatchCK.Reset();
                    MystopwatchCK.Start();
                }
            }
            repo.POSBrowserV25StorePortal.ExitEscInfo.SearchTimeout = 30000;

            Global.LogFileIndentLevel--;
            Global.LogText = "OUT fnBrowserGoHome";
            WriteToLogFile.Run();
        }
Exemple #15
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);
            }
        }
Exemple #16
0
        // R E T U R N  S K U ##############################################################################
        //
        public void SpecialCheckForCodeF4Alert()
        {
            RanorexRepository repo           = new RanorexRepository();
            fnWriteToLogFile  WriteToLogFile = new fnWriteToLogFile();

            Ranorex.Unknown element = null;

            // Wait for Another Transaction pop-up
            while (!Host.Local.TryFindSingle(repo.RetechAnotherTransactionInfo.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);
                if (Host.Local.TryFindSingle(repo.RetechTillOverageWarningView.CodeF4AlertInfo.AbsolutePath.ToString(), out element)
                    ||
                    Host.Local.TryFindSingle(repo.RetechTillOverageWarningView.CodeF4Alert2Info.AbsolutePath.ToString(), out element)
                    )
                {
                    repo.RetechTillOverageWarningView.DropCashCommand.Click();
                    while (!repo.RetechLoginView.TxtPassword.Enabled)
                    {
                        Thread.Sleep(100);
                    }
                    repo.RetechLoginView.TxtPassword.PressKeys("advanced{Return}");
                    while (!repo.RetechTillDepositView.DropBoxAmount.Enabled)
                    {
                        Thread.Sleep(100);
                    }
                    repo.RetechTillDepositView.DropBoxAmount.PressKeys("40000");
                    repo.RetechTillDepositView.AddCashDropButton.Click();
                    Thread.Sleep(1000);
                    repo.RetechTillDepositView.DropBoxAmount.PressKeys("{Escape}");
                }
            }

            // Press excape key on Another Transaction pop-up
            while (!Host.Local.TryFindSingle(repo.RetechLoginView.TxtPasswordInfo.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);
            }
        }
Exemple #17
0
        public void Run()
        {
            Mouse.DefaultMoveTime        = 300;
            Keyboard.DefaultKeyPressTime = 100;
            Delay.SpeedFactor            = 1.0;

            RanorexRepository repo           = new RanorexRepository();
            fnWriteToLogFile  WriteToLogFile = new fnWriteToLogFile();

            if (Global.IsPerformanceTest || Global.SwitchMetricOverRide)
            {           // Only write out metrics if doing performance testing
                Global.Q4StatBuffer = Global.Q4StatBuffer + Global.Test_ID + "," +
                                      Global.Register_ID + "," +
                                      Global.AutoVer_ID + "," +
                                      Global.CurrentScenario + "," +
                                      Global.Module + "," +
                                      Global.CurrentMetricDesciption + "," +
                                      Global.CurrentIteration + "," +
                                      Global.Q4StatLine + "," +
                                      System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff") +
                                      "\r\n";
            }
        }
Exemple #18
0
        private void GoHome()
        {
            Ranorex.Unknown   element        = null;
            RanorexRepository repo           = new RanorexRepository();
            fnWriteToLogFile  WriteToLogFile = new fnWriteToLogFile();

            Thread.Sleep(1000);
            Global.LogText = @"Waiting for Performance Dashboard Menu to display";
            WriteToLogFile.Run();
            while (!repo.ShellRoot.DashboardSHomeButton.Enabled)
            {
                Thread.Sleep(100);
            }
            repo.ShellRoot.DashboardSHomeButton.Click();
            while (!Host.Local.TryFindSingle(repo.ShellRoot.MyLogoRootInfo.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);
            }
            while (!repo.ShellRoot.MyLogoRoot.Enabled)
            {
                Thread.Sleep(100);
            }
        }
Exemple #19
0
        public void Run()
        {       //*****************Start  Scenario 16 - Retech - Returns ******************
            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();

            Global.CurrentScenario = 16;

            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 = @"---> fnDoScenario16 Iteration: " + Global.CurrentIteration;
            WriteToLogFile.Run();
            Report.Log(ReportLevel.Info, "Scenario 16 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();

            if (Global.DomesticRegister)
            {
                // Press F1 add item
                Keyboard.Press("{F1}");
                MystopwatchF1.Reset();
                MystopwatchF1.Start();
                while (!Host.Local.TryFindSingle(repo.AddItemTextInfo.AbsolutePath.ToString(), out element))
                {
                    Thread.Sleep(100);
                }
                TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);                   // Subtract overhead and store in Global.Q4StatLine
                Global.CurrentMetricDesciption = "[F1] wait for add item";
                Global.Module = "F1 Add Item";
                DumpStatsQ4.Run();
                Global.CurrentMetricDesciption = "Module Total Time";
                DumpStatsQ4.Run();
            }
            else
            {
                repo.IPOSScreen.Self.Click();
            }

            Global.CurrentSKU = Global.S17Trade5;
            EnterSKU.Run();

// 8-1-18			var activityRoot = repo.Retech.ActivityRoot;

            // Press returns
            if (Global.DomesticRegister)
            {
//				while(!repo.Retech.ReturnsF4.Enabled) // 7-23-18
//					{	Thread.Sleep(100); }
//				repo.Retech.ReturnsF4.Click();
                Keyboard.Press("{F4}");
                Thread.Sleep(100);
            }
            else                                                            // International
            {
                repo.IPOSInternationalEnterSKUField.Text.PressKeys("{F3}"); // Returns
                //	while(!repo.FormPOS1.ReturnSKuField.Enabled) // 3/25/19
                while (!repo.CodeF4Password.Enabled)
                {
                    Thread.Sleep(100);
                }
            }

            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();

            for (int RetNum = 1; RetNum <= 5; RetNum++)
            {
                if (Global.DomesticRegister)
                {
                    // select add item and add the SKU
                    while (!repo.AddLineItemCommand.Enabled)
                    {
                        Thread.Sleep(100);
                    }
                    Thread.Sleep(100);
                    // repo.AddLineItemCommand.Click(); 1-21-19
                    Keyboard.Press("{F1}");
                    Thread.Sleep(100);
                    repo.AddItemText.TextValue = Global.S4Sku1;
                    Keyboard.Press("{Enter}");

                    // Select Defective for retrun reason
                    //repo.ReturnReason.Click();  1-21-19
                    repo.ShellView.Rectangle.Click();
                    Thread.Sleep(200);
                    //repo.Defective.Click();  1-21-19
                    repo.Source.Defective.Click();
                    Thread.Sleep(100);

                    //Click on Scan or select receipt and select no receipt
                    repo.Retech.SelectReceipt.Click();
                    Thread.Sleep(100);
                    repo.Retech.NoReceiptAvailableCommand.Click();
                    Thread.Sleep(200);

                    // Press F5 continue
                    Keyboard.Press("{F5}");
                }
                else                // International
                {
                    while (!repo.CodeF4Password.Visible)
                    {
                        Thread.Sleep(100);
                    }

                    repo.CodeF4Password.Click("72;8");
                    Delay.Milliseconds(200);

                    repo.CodeF4Password.PressKeys("238325{Return}");

                    Keyboard.Press("n{Return}");

                    Keyboard.Press("{F5}");

                    Keyboard.Press("{F12}");

//					repo.InternationalReturnSKUField.TextValue = "238325";	// Enter SKU to return
//					repo.InternationalReturnSKUField.PressKeys("{Return}");
//
//					repo.ItemSearch.Self.PressKeys("n");	// no box not opened
//					while(!repo.ItemSearch.Self.Enabled) Thread.Sleep(100);
//					repo.ItemSearch.Self.PressKeys("{Return}"); // return defective
//					while(!repo.ItemSearch.Self.Enabled) Thread.Sleep(100);
//					repo.ItemSearch.Self.PressKeys("{F5}");		// no receipt
//					while(!repo.ItemSearch.Self.Enabled) Thread.Sleep(100);
//					repo.ItemSearch.Self.PressKeys("{F12}");	// OK
//					while(!repo.ItemSearch.Self.Enabled) Thread.Sleep(100);
                }
            }

            if (!Global.DomesticRegister)                       // if international to final apply for returns
            {
                Keyboard.Press("{F12}");
            }

            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);               // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = "Enter 5 Returns";
            Global.Module = "Returns";
            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 16";
            Global.Module = "Total Time";
            DumpStatsQ4.Run();

            // Write out metrics buffer
            WriteOutStatsQ4Buffer.Run();

            Global.LogText = "<--- fnDoScenario16 Iteration: " + Global.CurrentIteration;
            WriteToLogFile.Run();
            Report.Log(ReportLevel.Info, "Scenario 16 OUT", "Iteration: " + Global.CurrentIteration, new RecordItemIndex(0));

            Thread.Sleep(2000);

            // ***********End Scenario 16*****************
        }
Exemple #20
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);
        }
Exemple #21
0
        //
        // F I N A L   C H E C K   O U T ##############################################################################
        //
        public void SpecialEnterCustomerInformation()
        {
            RanorexRepository repo = new RanorexRepository();

            Ranorex.Unknown element = null;

            fnWriteToLogFile WriteToLogFile = new fnWriteToLogFile();

            // ##### Start edit customer
            Global.LogText = @"F8 edit customer info";
            WriteToLogFile.Run();

            repo.EditProfileCommand.Click();                    // edit F8
            Thread.Sleep(200);

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

            if (repo.DateOfBirth.TextValue == "")
            {
                repo.DateOfBirth.TextValue = "11/11/1948";
            }

            if (repo.AlternatePhoneValue.TextValue == "")
            {
                repo.AlternatePhoneValue.TextValue = "5555555555";
            }

            if (repo.StreetTwoValue.TextValue == "")
            {
                repo.StreetTwoValue.TextValue = "10 St";
            }

            if (repo.EmailValue.TextValue == "")
            {
                repo.EmailValue.TextValue = "*****@*****.**";
            }
            // ##### End edit customer


            Global.LogText = @"Save Customer F6";
            WriteToLogFile.Run();
            Keyboard.Press("{F6}");         // Save
            Thread.Sleep(200);

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

            repo.RetechPeripheralHostWindow.SignOnPinPad.Click();
            Thread.Sleep(100);

            repo.RetechPeripheralHostWindow.AcceptOnPinPad.Click();
            Thread.Sleep(100);

            repo.DialogShellView.SignatureAcceptedCommand.Click();
            Thread.Sleep(100);

//		    repo.RetechPeripheralHostWindow.MinimizePinPad.Click();  // minimize cause always on top!!!!
        }
Exemple #22
0
        public void Run()
        {       //**************Start  Scenario 50 - Prepare for Performacne Dashboard test **********************
            Mouse.DefaultMoveTime        = 300;
            Keyboard.DefaultKeyPressTime = 100;
            Delay.SpeedFactor            = 1.0;

            RanorexRepository           repo                      = new RanorexRepository();
            fnWriteToLogFile            WriteToLogFile            = new fnWriteToLogFile();
            fnWaitForItemSearchToFinish WaitForItemSearchToFinish = new fnWaitForItemSearchToFinish();
            fnDumpStatsQ4            DumpStatsQ4                  = new fnDumpStatsQ4();
            fnTimeMinusOverhead      TimeMinusOverhead            = new fnTimeMinusOverhead();
            fnUpdatePALStatusMonitor UpdatePALStatusMonitor       = new fnUpdatePALStatusMonitor();
            FnWriteOutStatsQ4Buffer  WriteOutStatsQ4Buffer        = new FnWriteOutStatsQ4Buffer();

            //Ranorex.Unknown element = null;
            Global.AbortScenario = false;

            Global.CurrentScenario = 50;

            if (!Global.DoScenarioFlag[Global.CurrentScenario])
            {
                return;
            }

            Global.ScenarioExecuted = true;

            // Backoffice
            fnDoScenario13 DoScenario13 = new fnDoScenario13();
            fnDoScenario14 DoScenario14 = new fnDoScenario14();
            fnDoScenario15 DoScenario15 = new fnDoScenario15();
            fnDoScenario16 DoScenario16 = new fnDoScenario16();
            fnDoScenario18 DoScenario18 = new fnDoScenario18();
            fnDoScenario19 DoScenario19 = new fnDoScenario19();
            fnDoScenario20 DoScenario20 = new fnDoScenario20();
            fnDoScenario21 DoScenario21 = new fnDoScenario21();

            // Retech
            fnDoScenario33 DoScenario33 = new fnDoScenario33();
            fnDoScenario34 DoScenario34 = new fnDoScenario34();
            fnDoScenario36 DoScenario36 = new fnDoScenario36();
            fnDoScenario37 DoScenario37 = new fnDoScenario37();
            fnDoScenario47 DoScenario47 = new fnDoScenario47();

            for (Global.CurrentIteration = 1; Global.CurrentIteration <= 5; Global.CurrentIteration++)
            {
                // Back Office
                //InitScenarioStart(); Global.IndirectCall = true; DoScenario13.Run(); EndScenarioCleanup();
                //InitScenarioStart(); Global.IndirectCall = true; DoScenario18.Run(); EndScenarioCleanup();
                //InitScenarioStart(); Global.IndirectCall = true; DoScenario19.Run(); EndScenarioCleanup();
                //InitScenarioStart(); Global.IndirectCall = true; DoScenario20.Run(); EndScenarioCleanup();

                // ReTech
                //InitScenarioStart(); Global.IndirectCall = true; DoScenario16.Run(); EndScenarioCleanup();
                //InitScenarioStart(); Global.IndirectCall = true; DoScenario33.Run(); EndScenarioCleanup();
                //InitScenarioStart(); Global.IndirectCall = true; DoScenario34.Run(); EndScenarioCleanup();
                //InitScenarioStart(); Global.IndirectCall = true; DoScenario36.Run(); EndScenarioCleanup();
                //InitScenarioStart(); Global.IndirectCall = true; DoScenario47.Run(); EndScenarioCleanup();

                // Additional special data
                //Global.CurrentSKUOverideValue = "924089";  // Preowned
                //InitScenarioStart(); Global.IndirectCall = true; Global.CurrentSKUOveride = true; DoScenario33.Run(); EndScenarioCleanup();

                Global.CurrentSKUOverideValue            = "121407";       // Collectible
                InitScenarioStart(); Global.IndirectCall = true; Global.CurrentSKUOveride = true; Global.DoingCollectible = true; DoScenario33.Run(); EndScenarioCleanup();
            }



            Global.LogText = "<--- fnDoScenario50 Iteration: " + Global.CurrentIteration;
            WriteToLogFile.Run();
            Report.Log(ReportLevel.Info, "Scenario 50 OUT", "Iteration: " + Global.CurrentIteration, new RecordItemIndex(0));

            //***********End Scenario 50 ***************
        }
        public void Run()
        {
            Mouse.DefaultMoveTime        = 0;
            Keyboard.DefaultKeyPressTime = 0;
            Delay.SpeedFactor            = 0.0;

            RanorexRepository   repo              = new RanorexRepository();
            fnWriteToLogFile    WriteToLogFile    = new fnWriteToLogFile();
            fnDumpStatsQ4       DumpStatsQ4       = new fnDumpStatsQ4();
            fnTimeMinusOverhead TimeMinusOverhead = new fnTimeMinusOverhead();

            Global.LogText = "IN fnEnterCustomerInformation";
            WriteToLogFile.Run();
            Global.LogFileIndentLevel++;

            // Create new stopwatch
            Stopwatch Mystopwatch = new Stopwatch();

            Mystopwatch.Reset();
            Mystopwatch.Start();

            Ranorex.Unknown element = null;
            string          MyXPATH;

            // Will only fill in fields that are enabled and blank

            //repo.TransactionCustomerInformation.SearchTimeout = 100;
            while (!repo.TransactionCustomerInformation.PnlContent.FirstName.Enabled)
            {
                Thread.Sleep(100);
            }

            // First Name
            if (repo.TransactionCustomerInformation.PnlContent.FirstName.Enabled &&
                repo.TransactionCustomerInformation.PnlContent.FirstName.TextValue == "")
            {
                repo.TransactionCustomerInformation.PnlContent.FirstName.TextValue = "PALFirst";
            }

            // Middle Name
            if (repo.TransactionCustomerInformation.PnlContent.MiddleName.Enabled &&
                repo.TransactionCustomerInformation.PnlContent.MiddleName.TextValue == "")
            {
                repo.TransactionCustomerInformation.PnlContent.MiddleName.TextValue = "PALMiddle";
            }

            // Last Name
            if (repo.TransactionCustomerInformation.PnlContent.LastName.Enabled &&
                repo.TransactionCustomerInformation.PnlContent.LastName.TextValue == "")
            {
                repo.TransactionCustomerInformation.PnlContent.LastName.TextValue = "PALLast";
            }

            // Address 1
            if (repo.TransactionCustomerInformation.PnlContent.Address1.Enabled &&
                repo.TransactionCustomerInformation.PnlContent.Address1.TextValue == "")
            {
                repo.TransactionCustomerInformation.PnlContent.Address1.TextValue = "301 Bronco Street";
            }

            // Primary Phone
            if (repo.TransactionCustomerInformation.PnlContent.PrimaryPhone.Enabled &&
                repo.TransactionCustomerInformation.PnlContent.PrimaryPhone.TextValue == "")
            {
                repo.TransactionCustomerInformation.PnlContent.PrimaryPhone.TextValue = "9727651234";
            }

            // Address 2
            if (repo.TransactionCustomerInformation.PnlContent.Address2.Enabled &&
                repo.TransactionCustomerInformation.PnlContent.Address2.TextValue == "")
            {
                repo.TransactionCustomerInformation.PnlContent.Address2.TextValue = "301 Bronco Street";
            }

            // Mobile Phone
            if (repo.TransactionCustomerInformation.PnlContent.MobilePhone.Enabled &&
                repo.TransactionCustomerInformation.PnlContent.MobilePhone.TextValue == "")
            {
                repo.TransactionCustomerInformation.PnlContent.MobilePhone.TextValue = "9727654321";
            }

            // Email
//            if(	repo.TransactionCustomerInformation.PnlContent.Email.Enabled &&
//              repo.TransactionCustomerInformation.PnlContent.Email.TextValue == "")
            if (repo.EmailValue.Enabled &&
                repo.EmailValue.TextValue == "")
            {
                // Create a unique name consisting of time down to millisecond
                System.DateTime DateTimeNow = System.DateTime.Now;
                System.TimeSpan TimeNow     = DateTimeNow.TimeOfDay;
                string          UniqueName  = TimeNow.ToString().Replace(":", "");
                UniqueName = UniqueName.Replace(".", "");
                repo.EmailValue.TextValue = "PAL" + UniqueName + "@PALMail.com";
            }

            // City
            if (repo.TransactionCustomerInformation.PnlContent.City.Enabled &&
                repo.TransactionCustomerInformation.PnlContent.City.TextValue == "")
            {
                repo.TransactionCustomerInformation.PnlContent.City.TextValue = "Little Elm";
            }

            // Select State from drop down
            if (repo.TransactionCustomerInformation.PnlContent.StateDropDown.SelectedItemIndex == 0 &&
                repo.TransactionCustomerInformation.PnlContent.StateDropDown.Enabled)
            {
                repo.TransactionCustomerInformation.RawText6.Click("6;5");
                Delay.Milliseconds(200);

                repo.TransactionCustomerInformation.RawText6.Click("6;5");
                Delay.Milliseconds(200);

                repo.ListItemsValues.ListItemMB.Click("55;7");
                Delay.Milliseconds(200);
            }

            // Zip
            if (repo.TransactionCustomerInformation.PnlContent.ZipCode.Enabled &&
                repo.TransactionCustomerInformation.PnlContent.ZipCode.TextValue == "")
            {
                repo.TransactionCustomerInformation.PnlContent.ZipCode.TextValue = "75068";
            }

            // Date of Birth
            if (repo.TransactionCustomerInformation.TradeInformation.DateOfBirth.Enabled &&
                repo.TransactionCustomerInformation.TradeInformation.DateOfBirth.TextValue == "  /  /")
            {
                repo.TransactionCustomerInformation.TradeInformation.DateOfBirth.TextValue = "09111952";
            }

            // Male/Female
            if (repo.TransactionCustomerInformation.TradeInformation.MaleFemaleDropDownArrow.TextColor != "#FFFFFF")            // Is "#FFFFFF" when shaded out - not enabled
            {
                repo.TransactionCustomerInformation.TradeInformation.MaleFemaleDropDownArrow.Click("6;8");                      // NOTE must be pressed twice
                repo.TransactionCustomerInformation.TradeInformation.MaleFemaleDropDownArrow.Click("6;8");
                repo.ListItemsValues.Female.Click("99;7");
            }

            // Eye Color
            if (repo.TransactionCustomerInformation.TradeInformation.EyeColorDropDownArrow.TextColor != "#FFFFFF")            // Is "#FFFFFF" when shaded out - not enabled
            {
                repo.TransactionCustomerInformation.TradeInformation.EyeColorDropDownArrow.Click("5;7");                      // NOTE must be pressed twice
                repo.TransactionCustomerInformation.TradeInformation.EyeColorDropDownArrow.Click("5;7");
                repo.ListItemsValues.Blue.Click("115;6");
            }

            // Hair Color
            if (repo.TransactionCustomerInformation.TradeInformation.HairColorDropDownArrow.TextColor != "#FFFFFF")             // Is "#FFFFFF" when shaded out - not enabled
            {
                repo.TransactionCustomerInformation.TradeInformation.HairColorDropDownArrow.Click("8;8");                       // NOTE must be pressed twice
                repo.TransactionCustomerInformation.TradeInformation.HairColorDropDownArrow.Click("8;8");
                repo.ListItemsValues.Black.Click("99;2");
            }

            // Tax ID
            MyXPATH = repo.TransactionCustomerInformation.PnlContent.TaxIDInfo.AbsolutePath.ToString();
            if (Host.Local.TryFindSingle(MyXPATH, out element))
            {
                repo.TransactionCustomerInformation.PnlContent.TaxID.TextValue = "46464645645645";
            }

            // Organization
            MyXPATH = repo.TransactionCustomerInformation.PnlContent.OrganizationNameInfo.AbsolutePath.ToString();
            if (Host.Local.TryFindSingle(MyXPATH, out element))
            {
                repo.TransactionCustomerInformation.PnlContent.OrganizationName.TextValue = "My Ogranization";
            }

            // Select "Other" for Reason for Exemption
            MyXPATH = repo.TransactionCustomerInformation.PnlContent.ReasonForExemptionDropDownArrowInfo.AbsolutePath.ToString();
            if (Host.Local.TryFindSingle(MyXPATH, out element))
            {
                repo.TransactionCustomerInformation.PnlContent.ReasonForExemptionDropDownArrow.Click("6;5");
                //Thread.Sleep(50);
                repo.ListItemsValues.Other.Click("211;10");
            }

            // Country
            if (repo.TransactionCustomerInformation.PnlContent.Country.Enabled &&
                repo.TransactionCustomerInformation.PnlContent.Country.TextValue == "")
            {
                repo.TransactionCustomerInformation.PnlContent.Country.TextValue = "US";
            }

            Keyboard.Press("{F5}");
            Thread.Sleep(100);

            // Check for Refund Warning pop-up if yes press F5 for cash
            if (Host.Local.TryFindSingle(repo.PopUpCustomerLookupUnavailable.WarningPowerUpMemberInfo.AbsolutePath.ToString(), out element))
            {
                Global.LogText = "Popup - Warning Power Up Member";
                WriteToLogFile.Run();
                Keyboard.Press("{F5}");
                Thread.Sleep(100);
            }

            // Check for "If the customer also want to update their GI subscription ..."
            // NOTE: this has same xpath as no customer found by phone number popup
            if (Host.Local.TryFindSingle(repo.PopUpCustomerLookupUnavailable.WarningPowerUpMemberInfo.AbsolutePath.ToString(), out element))
            {
                Global.LogText = "Popup - If the customer also want to update their GI subscription ...";
                WriteToLogFile.Run();
                Keyboard.Press("{F5}");
                Thread.Sleep(100);
                Keyboard.Press("{F5}");
                Thread.Sleep(100);
            }

            // Check for if customer want to update GI subscription
            if (Host.Local.TryFindSingle(repo.PopUpCustomerLookupUnavailable.PopUpIfWantToUpdateGIInfo.AbsolutePath.ToString(), out element))
            {
                Global.LogText = "Popup - if customer want to update GI subscription";
                WriteToLogFile.Run();
                Keyboard.Press("{F5}");
                Thread.Sleep(100);
            }

            while (Host.Local.TryFindSingle(repo.TransactionCustomerInformation.PnlContent.FirstNameInfo.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);

                // Check for Invalid email address
                if (Host.Local.TryFindSingle(repo.InvalidFieldDialog.InvalidEmailAddressInfo.AbsolutePath.ToString(), out element))
                {
                    Global.LogText = "Popup - Invalid email address";
                    WriteToLogFile.Run();
                    repo.InvalidFieldDialog.Skip.Click("4;15");
                }
                // Check for Invalid email address Windows 7
                if (Host.Local.TryFindSingle(repo.InvalidFieldDialog.VerifyTheEmailAddressWithTheCustomInfo.AbsolutePath.ToString(), out element))
                {
                    Global.LogText = "Popup - Invalid email address";
                    WriteToLogFile.Run();
                    Keyboard.Press("{Escape}");
                }

                // Check for Because the customer is a PowerUp member...
                if (Host.Local.TryFindSingle(repo.PopUpCustomerLookupUnavailable.BecauseTheCustomerIsAPowerUpMemberInfo.AbsolutePath.ToString(), out element))
                {
                    Global.LogText = "Popup - Because the customer is a PowerUp member..";
                    WriteToLogFile.Run();
                    Keyboard.Press("{F5}");
                    Thread.Sleep(100);
                }

                // Check for Customer communication email address...
                if (Host.Local.TryFindSingle(repo.PopUpCustomerLookupUnavailable.CustomersCommunicationEmailAddressHaInfo.AbsolutePath.ToString(), out element))
                {
                    Global.LogText = "Popup - Customer communication email address..";
                    WriteToLogFile.Run();
                    Keyboard.Press("{F5}");
                    Thread.Sleep(100);
                }
                // Check for Customer communication email address...
                if (Host.Local.TryFindSingle(repo.PopUpCustomerLookupUnavailable.CustomersCommunicationEmailAddressInfo.AbsolutePath.ToString(), out element))
                {
                    Global.LogText = "Popup - Customer communication email address..";
                    WriteToLogFile.Run();
                    Keyboard.Press("{F5}");
                    Thread.Sleep(100);
                }

                // Check for Unable to Validate Customer
                if (Host.Local.TryFindSingle(repo.PopUpCustomerLookupUnavailable.WeAreUnableToValidateTheCustomersInfo.AbsolutePath.ToString(), out element))
                {
                    Global.LogText = "Popup - Unable to Validate Customer..";
                    WriteToLogFile.Run();
                    Keyboard.Press("{F5}");
                    Thread.Sleep(100);
                }
            }


            TimeMinusOverhead.Run((float)Mystopwatch.ElapsedMilliseconds);               // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = "Enter Customer Information";
            Global.Module = "fnEnterCustomerInformation";
            DumpStatsQ4.Run();

            Global.LogFileIndentLevel--;
            Global.LogText = "OUT fnEnterCustomerInformation";
            WriteToLogFile.Run();
        }
        public void Run()
        {       //*****************Start  Scenario 39 - Retech - Enter 10 SKUs - credit card ******************
            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();

            Global.CurrentScenario = 39;

            if (!Global.DoScenarioFlag[Global.CurrentScenario])
            {
                return;
            }

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

            Global.LogText = @"---> fnDoScenario39 Iteration: " + Global.CurrentIteration;
            WriteToLogFile.Run();
            Report.Log(ReportLevel.Info, "Scenario 39 IN", "Iteration: " + Global.CurrentIteration, new RecordItemIndex(0));

            // Start
            MystopwatchModuleTotal.Reset();
            MystopwatchModuleTotal.Start();

            Global.LogText = @"Start Transaction";
            WriteToLogFile.Run();
            StartTransaction.Run();

            MystopwatchModuleTotal.Reset();
            MystopwatchModuleTotal.Start();

            string[] MySKUs = new string[10];
            MySKUs[0] = Global.S9SKU1;
            MySKUs[1] = Global.S9SKU2;
            MySKUs[2] = Global.S9SKU3;
            MySKUs[3] = Global.S9SKU4;
            MySKUs[4] = Global.S9SKU5;
            MySKUs[5] = Global.S9SKU6;
            MySKUs[6] = Global.S9SKU7;
            MySKUs[7] = Global.S9SKU8;
            MySKUs[8] = Global.S9SKU9;
            MySKUs[9] = Global.S9SKU10;

            MystopwatchF1.Reset();
            MystopwatchF1.Start();

            Global.LogText = @"Enter SKUs";
            WriteToLogFile.Run();

            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();

            for (int soff = 0; soff <= 9; soff++)
            {
                // Press F1 add item
                Keyboard.Press("{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();
                    }
                }

                // Enter SKU
                Global.LogText = @"Entering SKU: " + MySKUs[soff];
                WriteToLogFile.Run();
                repo.AddItemText.TextValue = MySKUs[soff];
                repo.RetechQuickEntryView.TxtWatermark.PressKeys("{Enter}");
                while (!repo.AddLineItemCommand.Enabled)
                {
                    if (Host.Local.TryFindSingle(repo.ContinueButtonCommandInfo.AbsolutePath.ToString(), out element))
                    {
                        repo.ContinueButtonCommand.Click();
                    }
                    Thread.Sleep(100);
                }
            }

            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);               // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = "Enter SKUs";
            Global.Module = "Enter 10 SKUs";
            DumpStatsQ4.Run();

            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();

            Keyboard.Press("{F5}");                                          // Continue F5 Recommended Pre-Owned Items
            Thread.Sleep(200);
            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds); // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = "[F5] Continue";
            Global.Module = "Enter 10 SKUs";
            DumpStatsQ4.Run();

            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();

            Keyboard.Press("{F6}");                                          // I've explained these related products to the customer F6
            Thread.Sleep(100);
            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds); // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = "[F6]: explain related products";
            Global.Module = "Enter 10 SKUs";
            DumpStatsQ4.Run();

            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();
            Keyboard.Press("{F5}");                                          // Continue F5
            Thread.Sleep(200);
            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds); // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = "[F5]: GPG";
            Global.Module = "Enter 10 SKUs";
            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 = "Enter 10 SKUs";
            DumpStatsQ4.Run();

            // @#@#@# C H E C K O U T #@#@#@
            Global.PayWithMethod = "Credit";
            Checkout.Run();

            TimeMinusOverhead.Run((float)MystopwatchTT.ElapsedMilliseconds);   // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = @"Scenario 39";
            Global.Module = "Total Time";
            DumpStatsQ4.Run();

            // Write out metrics buffer
            WriteOutStatsQ4Buffer.Run();

            Global.LogText = "<--- fnDoScenario39 Iteration: " + Global.CurrentIteration;
            WriteToLogFile.Run();
            Report.Log(ReportLevel.Info, "Scenario 39 OUT", "Iteration: " + Global.CurrentIteration, new RecordItemIndex(0));

            Thread.Sleep(2000);

            // ***********End Scenario 39*****************
        }
Exemple #25
0
        public void Run()
        {
            Mouse.DefaultMoveTime        = 300;
            Keyboard.DefaultKeyPressTime = 100;
            Delay.SpeedFactor            = 1.0;

            RanorexRepository        repo = new RanorexRepository();
            fnUpdatePALStatusMonitor UpdatePALStatusMonitor = new fnUpdatePALStatusMonitor();
            fnWriteToLogFile         WriteToLogFile         = new fnWriteToLogFile();
            FnWriteOutStatsQ4Buffer  WriteOutStatsQ4Buffer  = new FnWriteOutStatsQ4Buffer();
            fnDumpStatsQ4            DumpStatsQ4            = new fnDumpStatsQ4();
            fnTimeMinusOverhead      TimeMinusOverhead      = new fnTimeMinusOverhead();

            Ranorex.Unknown element = null;
            Global.AbortScenario = false;

            //*****************Start  Scenario 21 - WIS Web-In-Store ******************
            Global.CurrentScenario = 21;

            if (!Global.IndirectCall)
            {
                if (!Global.DoScenarioFlag[Global.CurrentScenario])
                //			if(Global.CurrentScenario != 9999)
                {
                    return;
                }
            }

            Global.ScenarioExecuted = true;

            Global.RetechScenariosPerformed++;
            UpdatePALStatusMonitor.Run();

            // Create new stopwatch
            Stopwatch MystopwatchTT = new Stopwatch();

            MystopwatchTT.Reset();
            MystopwatchTT.Start();
            Stopwatch MystopwatchModuleTotal = new Stopwatch();

            MystopwatchModuleTotal.Reset();
            MystopwatchModuleTotal.Start();

            Stopwatch MystopwatchQ4 = new Stopwatch();

            Global.LogText = @"---> fnDoScenario21 Iteration: " + Global.CurrentIteration;
            WriteToLogFile.Run();
            Report.Log(ReportLevel.Info, "Scenario 21 IN", "Iteration: " + Global.CurrentIteration, new RecordItemIndex(0));

            // Click on back office link
            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();
            Global.LogText = @"Clicking on Back Office link";
            WriteToLogFile.Run();
            repo.Retech.Self.Click();
            repo.Retech.Self.PressKeys("{LShiftKey down}{F3}{LShiftKey up}");
            Global.LogText = @"Waiting for Back Office home screen";
            WriteToLogFile.Run();
            while (!repo.BackOffice275111HomeScreen.BackOffice275111HomeScreen.Enabled)
            {
                Thread.Sleep(100);
            }
            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);               // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = "Load Back Office";
            Global.Module = "WIS:";
            DumpStatsQ4.Run();
            Thread.Sleep(1000);

            // Press Shift-F2 for WIS
            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();
            Global.LogText = @"Pressing Shift-F2 for WIS";
            WriteToLogFile.Run();
            Keyboard.Press("{LShiftKey down}{F2}{LShiftKey up}");
            Global.LogText = @"Waiting for Browser to load";
            WriteToLogFile.Run();
            Thread.Sleep(3000);
            while (!Host.Local.TryFindSingle(repo.WebInStoreProductMozillaFirefox.FireFoxTextInfo.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(200);
            }
            while (!repo.WebInStoreProductMozillaFirefox.FireFoxText.Enabled)
            {
                Thread.Sleep(200);
            }
            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);               // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = "Load Browser";
            Global.Module = "WIS:";
            DumpStatsQ4.Run();
            Thread.Sleep(200);

            // Enter SKU
            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();
            Global.LogText = @"Enter SKU";
            WriteToLogFile.Run();
            repo.WebInStoreProductMozillaFirefox.FireFoxText.PressKeys("100800{Return}");              // ##### E N T E R    S K U ###
            Thread.Sleep(100);
            Global.LogText = @"Waiting for SKU link to display";
            WriteToLogFile.Run();
            while (!repo.MozillaFirefoxGameStopEdition.ProductDetails.Enabled)
            {
                Thread.Sleep(100);
            }
            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);               // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = "Search for SKU";
            Global.Module = "WIS:";
            DumpStatsQ4.Run();

            // Click on Product Details
            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();
            Global.LogText = @"Click on Product Details";
            WriteToLogFile.Run();
            repo.MozillaFirefoxGameStopEdition.ProductDetails.Click();
            Thread.Sleep(100);
            Global.LogText = @"Waiting for Product Details to display";
            WriteToLogFile.Run();
            while (!repo.WebInStoreProductMozillaFirefox.ProductDetailsText.Enabled)
            {
                Thread.Sleep(100);
            }
            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);               // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = "Get Product Details";
            Global.Module = "WIS:";
            DumpStatsQ4.Run();

            // Click on Add to Cart
            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();
            Global.LogText = @"Click on Add to Cart";
            WriteToLogFile.Run();
            repo.WebInStoreProductMozillaFirefox.Grouping.AddToCart.Click();
            Thread.Sleep(100);
            Global.LogText = @"Waiting for Item(s) added to cart";
            WriteToLogFile.Run();
            while (!repo.WebInStoreProductMozillaFirefox.Grouping.TextItemSAddedToCart.Enabled)
            {
                Thread.Sleep(100);
            }
            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);               // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = "Add to Cart";
            Global.Module = "WIS:";
            DumpStatsQ4.Run();

            // Click on Cart Continue
            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();
            Global.LogText = @"Click on Cart Continue";
            WriteToLogFile.Run();
            repo.WebInStoreProductMozillaFirefox.Grouping.Continue.Click();
            Thread.Sleep(100);
            Global.LogText = @"Waiting for Shipping Address";
            WriteToLogFile.Run();
            repo.ShippingAddressMozillaFirefoxGame.ShippingAddress.ShippingAddress1.Click();
            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);               // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = "Load Shipping Address";
            Global.Module = "WIS:";
            DumpStatsQ4.Run();

            // Fill in shipping address and click continue
            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();
            Global.LogText = @"Fill in shipping address and click continue";
            WriteToLogFile.Run();
            repo.ShippingAddressMozillaFirefoxGame.ShippingAddress.ShippingAddressFirstName.PressKeys("PAL");
            repo.ShippingAddressMozillaFirefoxGame.ShippingAddress.ShippingAddressLastName.PressKeys("Last");
            repo.ShippingAddressMozillaFirefoxGame.ShippingAddress.ShippingAddressAddress.PressKeys("301 Tower");
            repo.ShippingAddressMozillaFirefoxGame.ShippingAddress.ShippingAddressCity.PressKeys("MyCity");
            //state start
            repo.ShippingAddressMozillaFirefoxGame.ShippingAddress.ComboBox.Click("214;9");
            Delay.Milliseconds(200);
            repo.Dropdown.Self.Click("169;23");
            Delay.Milliseconds(200);
            repo.ShippingAddressMozillaFirefoxGame.ShippingAddress.ComboBox.PressKeys("{LControlKey down}{LMenu}{LControlKey up}");
            // State end
            repo.ShippingAddressMozillaFirefoxGame.ShippingAddress.ShippingAddressZipPostal.PressKeys("76401");
            repo.ShippingAddressMozillaFirefoxGame.ShippingAddress.ShippingAddressPhone.PressKeys("9727651234");
            repo.ShippingAddressMozillaFirefoxGame.ShippingAddress.ShippingAddressEmail.PressKeys("*****@*****.**");
            repo.ShippingAddressMozillaFirefoxGame.ShippingAddress.ShippingAddressReTypeEmail.PressKeys("*****@*****.**");
            // Press continue
            repo.ShippingAddressMozillaFirefoxGame.ShippingAddress.ShippingAddressContinue.Click();
            Thread.Sleep(100);
            Global.LogText = @"Waiting for Shipping Address Confirm";
            WriteToLogFile.Run();
            while (!repo.ShippingAddressMozillaFirefoxGame.ShippingAddress.ShippingAddressConfirmButton.Enabled)
            {
                Thread.Sleep(100);
            }
            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);               // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = "Fill in Shipping Address";
            Global.Module = "WIS:";
            DumpStatsQ4.Run();

            // Click on Shipping Address Confirmed
            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();
            Global.LogText = @"Click on Shipping Address Confirmed";
            WriteToLogFile.Run();
            repo.ShippingAddressMozillaFirefoxGame.ShippingAddress.ShippingAddressConfirmButton.Click();
            Thread.Sleep(100);
            Global.LogText = @"Waiting for Shipping Method";
            WriteToLogFile.Run();
            while (!repo.ShippingAddressMozillaFirefoxGame.Grouping.ShippingMethod.Enabled)
            {
                Thread.Sleep(100);
            }
            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);               // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = "Shipping Address Confirmed";
            Global.Module = "WIS:";
            DumpStatsQ4.Run();

            // Click on Shipping Method Continue
            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();
            Global.LogText = @"Click on Shipping Method Continue";
            WriteToLogFile.Run();
            repo.ShippingAddressMozillaFirefoxGame.Grouping.ShippingMethodContinue.Click();
            Thread.Sleep(100);
            Global.LogText = @"Waiting for Order Review";
            WriteToLogFile.Run();
            while (!repo.ShippingAddressMozillaFirefoxGame.Grouping.OrderReview.Enabled)
            {
                Thread.Sleep(100);
            }
            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);               // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = "Shipping Method Confirmed";
            Global.Module = "WIS:";
            DumpStatsQ4.Run();

            // Click on Order Review Continue
            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();
            Global.LogText = @"Click on Order Review Continue";
            WriteToLogFile.Run();
            repo.ShippingAddressMozillaFirefoxGame.Grouping.OrderReviewSubmit.Click();
            Thread.Sleep(100);
            Global.LogText = @"Waiting for Order Confirmation";
            WriteToLogFile.Run();
            while (!repo.ShippingAddressMozillaFirefoxGame.Grouping.GameStopWebOrderConfirmation.Enabled)
            {
                Thread.Sleep(100);
            }
            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);               // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = "Order Confirmation";
            Global.Module = "WIS:";
            DumpStatsQ4.Run();

            Global.TempFloat = (float)MystopwatchModuleTotal.ElapsedMilliseconds / 1000;
            TimeMinusOverhead.Run((float)MystopwatchModuleTotal.ElapsedMilliseconds);               // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = @"Module Total Time";
            Global.Module = "WIS:";
            DumpStatsQ4.Run();

            // Press Escape to exit
            repo.ShippingAddressMozillaFirefoxGame.FireFoxExit.Click();

            TimeMinusOverhead.Run((float)MystopwatchTT.ElapsedMilliseconds);   // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = @"Scenario 21";
            Global.Module = "Total Time";
            DumpStatsQ4.Run();

            // Write out metrics buffer
            WriteOutStatsQ4Buffer.Run();

            Global.LogText = "<--- fnDoScenario21 Iteration: " + Global.CurrentIteration;
            WriteToLogFile.Run();
            Report.Log(ReportLevel.Info, "Scenario 21 OUT", "Iteration: " + Global.CurrentIteration, new RecordItemIndex(0));

            return;

            // ***********End Scenario 21 *****************
        }
Exemple #26
0
        public void Run()
        {
            Mouse.DefaultMoveTime        = 300;
            Keyboard.DefaultKeyPressTime = 100;
            Delay.SpeedFactor            = 1.0;

            Ranorex.Unknown element = null;

            RanorexRepository        repo = new RanorexRepository();
            fnUpdatePALStatusMonitor UpdatePALStatusMonitor = new fnUpdatePALStatusMonitor();
            fnWriteToLogFile         WriteToLogFile         = new fnWriteToLogFile();
            FnWriteOutStatsQ4Buffer  WriteOutStatsQ4Buffer  = new FnWriteOutStatsQ4Buffer();
            fnDumpStatsQ4            DumpStatsQ4            = new fnDumpStatsQ4();
            fnTimeMinusOverhead      TimeMinusOverhead      = new fnTimeMinusOverhead();
            fnWriteToErrorFile       WriteToErrorFile       = new fnWriteToErrorFile();

            Stopwatch MystopwatchQ4 = new Stopwatch();
            Stopwatch MystopwatchTT = new Stopwatch();

            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();
            Global.LogText = @"Waiting for Performance Dashboard Menu to display";
            WriteToLogFile.Run();
            while (!Host.Local.TryFindSingle(repo.ShellRoot.DashBoardF11Info.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);
            }
            while (!repo.ShellRoot.DashBoardF11.Enabled)
            {
                Thread.Sleep(100);
            }
            Global.TempFloat = (float)MystopwatchQ4.ElapsedMilliseconds / 1000;
            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);               // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = "Display Dashboard Menu";
            Global.Module = "Dashboard:";
            DumpStatsQ4.Run();

            //
            // Sales F1 Report
            //
            Global.LogText = @"Waiting for Sales F1 Report to display";
            WriteToLogFile.Run();
            while (!Host.Local.TryFindSingle(repo.ShellRoot.SalesButtonF1Info.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);
            }
            while (!repo.ShellRoot.SalesButtonF1.Enabled)
            {
                Thread.Sleep(100);
            }
            Thread.Sleep(100);
            repo.ShellRoot.SalesButtonF1.Click("184;26");
            Thread.Sleep(100);
            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();
            while (!Host.Local.TryFindSingle(repo.ShellRoot.SalesTitleBarInfo.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);
            }
            while (!repo.ShellRoot.SalesTitleBar.Enabled)
            {
                Thread.Sleep(100);
            }
            Global.TempFloat = (float)MystopwatchQ4.ElapsedMilliseconds / 1000;
            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);               // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = "Display Sales F1 Report";
            Global.Module = "Dashboard:";
            DumpStatsQ4.Run();
            GoHome();


            //
            // Five To Drive F2 Report
            //
            Global.LogText = @"Waiting for Five To Drive F2 Report to display";
            WriteToLogFile.Run();
            while (!Host.Local.TryFindSingle(repo.ShellRoot.FiveToDriveButtonF2Info.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);
            }
            while (!repo.ShellRoot.FiveToDriveButtonF2.Enabled)
            {
                Thread.Sleep(100);
            }
            Thread.Sleep(100);
            repo.ShellRoot.FiveToDriveButtonF2.Click("104;13");
            Thread.Sleep(100);
            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();
            while (!Host.Local.TryFindSingle(repo.ShellRoot.FiveToDriveTitleBarInfo.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);
            }
            while (!repo.ShellRoot.FiveToDriveTitleBar.Enabled)
            {
                Thread.Sleep(100);
            }
            Global.TempFloat = (float)MystopwatchQ4.ElapsedMilliseconds / 1000;
            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);               // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = @"Display Five To Drive F2 Report";
            Global.Module = "Dashboard:";
            DumpStatsQ4.Run();
            GoHome();


            //
            // Guest F3 Report
            //
            Global.LogText = @"Waiting for Guest F3 Report to display";
            WriteToLogFile.Run();
            while (!Host.Local.TryFindSingle(repo.ShellRoot.GuestButtonF3Info.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);
            }
            while (!repo.ShellRoot.GuestButtonF3.Enabled)
            {
                Thread.Sleep(100);
            }
            Thread.Sleep(100);
            repo.ShellRoot.GuestButtonF3.Click("160;9");
            Thread.Sleep(100);
            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();
            while (!Host.Local.TryFindSingle(repo.ShellRoot.GuestTitleBarInfo.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);
            }
            while (!repo.ShellRoot.GuestTitleBar.Enabled)
            {
                Thread.Sleep(100);
            }
            Global.TempFloat = (float)MystopwatchQ4.ElapsedMilliseconds / 1000;
            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);               // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = @"Display Guest F3 Report";
            Global.Module = "Dashboard:";
            DumpStatsQ4.Run();
            GoHome();

            //
            // Circle of Life F4 Report
            //
            Global.LogText = @"Waiting for Circle of Life F4 Report to display";
            WriteToLogFile.Run();
            while (!Host.Local.TryFindSingle(repo.ShellRoot.CircleOfLifeButtonF4Info.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);
            }
            while (!repo.ShellRoot.CircleOfLifeButtonF4.Enabled)
            {
                Thread.Sleep(100);
            }
            Thread.Sleep(100);
            repo.ShellRoot.CircleOfLifeButtonF4.Click("198;9");
            Thread.Sleep(100);
            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();
            while (!Host.Local.TryFindSingle(repo.ShellRoot.CircleOfLifeTaskBarInfo.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);
            }
            while (!repo.ShellRoot.CircleOfLifeTaskBar.Enabled)
            {
                Thread.Sleep(100);
            }
            Global.TempFloat = (float)MystopwatchQ4.ElapsedMilliseconds / 1000;
            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);               // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = "Display Circle of Life F4 Report";
            Global.Module = "Dashboard:";
            DumpStatsQ4.Run();
            // Sub Circle of Life Reports
            // F1 Reservations
            Global.LogText = @"Waiting for F1 Reservations Report to display";
            WriteToLogFile.Run();
            while (!repo.ShellRoot.SalesButtonF1.Enabled)
            {
                Thread.Sleep(100);
            }
            Thread.Sleep(100);
            repo.ShellRoot.SalesButtonF1.Click();
            Thread.Sleep(100);
            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();
            while (!Host.Local.TryFindSingle(repo.ShellRoot.ReservationsTitleBarInfo.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);
            }
            while (!repo.ShellRoot.ReservationsTitleBar.Enabled)
            {
                Thread.Sleep(100);
            }
            Global.TempFloat = (float)MystopwatchQ4.ElapsedMilliseconds / 1000;
            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);                       // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = "Display F1 Reservations Report";
            Global.Module = "Dashboard:";
            DumpStatsQ4.Run();
            Thread.Sleep(1000);
            repo.ShellRoot.Self.PressKeys("{Escape}");
            Global.LogText = @"Waiting for Circle of Life to display";
            WriteToLogFile.Run();
            while (!Host.Local.TryFindSingle(repo.ShellRoot.CircleOfLifeTaskBarInfo.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);
            }
            while (!repo.ShellRoot.CircleOfLifeTaskBar.Enabled)
            {
                Thread.Sleep(100);
            }
            // F2 Power Up Rewards
            Global.LogText = @"Waiting for F2 Power Up Rewards Report to display";
            WriteToLogFile.Run();
            while (!repo.ShellRoot.FiveToDriveButtonF2.Enabled)
            {
                Thread.Sleep(100);
            }
            Thread.Sleep(100);
            repo.ShellRoot.FiveToDriveButtonF2.Click();
            Thread.Sleep(100);
            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();
            while (!Host.Local.TryFindSingle(repo.ShellRoot.PowerUpRewardsTitleBarInfo.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);
            }
            while (!repo.ShellRoot.PowerUpRewardsTitleBar.Enabled)
            {
                Thread.Sleep(100);
            }
            Global.TempFloat = (float)MystopwatchQ4.ElapsedMilliseconds / 1000;
            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);                       // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = "Display F2 Power Up Rewards Report";
            Global.Module = "Dashboard:";
            DumpStatsQ4.Run();
            Thread.Sleep(1000);
            repo.ShellRoot.Self.PressKeys("{Escape}");
            Global.LogText = @"Waiting for Circle of Life to display";
            WriteToLogFile.Run();
            while (!Host.Local.TryFindSingle(repo.ShellRoot.CircleOfLifeTaskBarInfo.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);
            }
            while (!repo.ShellRoot.CircleOfLifeTaskBar.Enabled)
            {
                Thread.Sleep(100);
            }
            // Exit Circle of Life Report
            GoHome();

            //
            // Team F5 Report
            //
            Global.LogText = @"Waiting for Team F5 Report to display";
            WriteToLogFile.Run();
            while (!Host.Local.TryFindSingle(repo.ShellRoot.TeamF5Info.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);
            }
            while (!repo.ShellRoot.TeamF5.Enabled)
            {
                Thread.Sleep(100);
            }
            Thread.Sleep(100);
            repo.ShellRoot.TeamF5.Click("53;11");
            Thread.Sleep(100);
            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();
            while (!Host.Local.TryFindSingle(repo.ShellRoot.TeamTitleBarInfo.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);
            }
            while (!repo.ShellRoot.TeamTitleBar.Enabled)
            {
                Thread.Sleep(100);
            }
            Global.TempFloat = (float)MystopwatchQ4.ElapsedMilliseconds / 1000;
            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);               // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = @"Display Team F5 Report";
            Global.Module = "Dashboard:";
            DumpStatsQ4.Run();
            Global.LogText = @"Waiting for Performance Dashboard Menu to display";
            WriteToLogFile.Run();
            Thread.Sleep(100);
            // Sub report
            // F1 Collectible Sales
            Global.LogText = @"Waiting for F1 Collectible Sales Report to display";
            WriteToLogFile.Run();
            repo.ShellRoot.Self.PressKeys("{F1}");
            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();
            while (!Host.Local.TryFindSingle(repo.ShellRoot.CollectiblesSalesDollarInfo.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);
            }
            while (!repo.ShellRoot.CollectiblesSalesDollar.Enabled)
            {
                Thread.Sleep(100);
            }
            Global.TempFloat = (float)MystopwatchQ4.ElapsedMilliseconds / 1000;
            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);                       // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = "Display F1 Collectible Sales Report";
            Global.Module = "Dashboard:";
            DumpStatsQ4.Run();
            Thread.Sleep(1000);
            repo.ShellRoot.Self.PressKeys("{Escape}");
            Global.LogText = @"Waiting for Circle of Life to display";
            WriteToLogFile.Run();
            while (!Host.Local.TryFindSingle(repo.ShellRoot.TeamTitleBarInfo.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);
            }
            while (!repo.ShellRoot.TeamTitleBar.Enabled)
            {
                Thread.Sleep(100);
            }
            // Exit Team Report
            GoHome();

            // My Report
            Global.LogText = @"Waiting for My Report Report to display";
            WriteToLogFile.Run();
            repo.ShellRoot.Icon.Click("1;22");
            Delay.Milliseconds(200);
            repo.ShellRoot.MyREPORT.Click("127;23");
            Delay.Milliseconds(200);
            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();
            while (!Host.Local.TryFindSingle(repo.ShellRoot.EmployeeComparisonCtrlPlusTInfo.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);
            }
            while (!repo.ShellRoot.EmployeeComparisonCtrlPlusT.Enabled)
            {
                Thread.Sleep(100);
            }
            Global.TempFloat = (float)MystopwatchQ4.ElapsedMilliseconds / 1000;
            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);               // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = @"Display My Report Report";
            Global.Module = "Dashboard:";
            DumpStatsQ4.Run();
            GoHome();
            while (Host.Local.TryFindSingle(repo.ShellRoot.EmployeeComparisonCtrlPlusTInfo.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);
            }

            // My Goals
            Global.LogText = @"Waiting for My Goals Report to display";
            WriteToLogFile.Run();
            repo.ShellRoot.Icon.Click("1;22");
            Delay.Milliseconds(200);
            repo.ShellRoot.Text.Click("38;9");
            Delay.Milliseconds(200);
            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();
            while (!Host.Local.TryFindSingle(repo.ShellRoot.EntireStoreInfo.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);
            }
            while (!repo.ShellRoot.EntireStore.Enabled)
            {
                Thread.Sleep(100);
            }
            Global.TempFloat = (float)MystopwatchQ4.ElapsedMilliseconds / 1000;
            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);               // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = @"Display My Goals Report";
            Global.Module = "Dashboard:";
            DumpStatsQ4.Run();
            GoHome();

            // My Schedule Planner
            Global.LogText = @"Waiting for My Schedule Planner Report to display";
            WriteToLogFile.Run();
            repo.ShellRoot.Icon.Click("1;22");
            Delay.Milliseconds(200);
            repo.ShellRoot.Text1.Click("87;6");
            Delay.Milliseconds(200);
            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();
            while (!Host.Local.TryFindSingle(repo.ShellRoot.SchedulePlannerHeaderInfo.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);
            }
            while (!repo.ShellRoot.SchedulePlannerHeader.Enabled)
            {
                Thread.Sleep(100);
            }
            Global.TempFloat = (float)MystopwatchQ4.ElapsedMilliseconds / 1000;
            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);               // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = @"Display My Schedule Planner Report";
            Global.Module = "Dashboard:";
            DumpStatsQ4.Run();
            GoHome();
        }
        public void Run()
        {       //*****************Start  Scenario 33 - Retech - Simple One SKU Pay with Cash ******************
            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();

            Global.CurrentScenario = 33;

            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 = @"---> fnDoScenario33 Iteration: " + Global.CurrentIteration;
            WriteToLogFile.Run();
            Report.Log(ReportLevel.Info, "Scenario 33 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();

            if (Global.DomesticRegister)
            {
                // Press F1 add item
                Keyboard.Press("{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();
                    }
                }

                TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);                   // Subtract overhead and store in Global.Q4StatLine
                Global.CurrentMetricDesciption = "[F1] wait for add item";
                Global.Module = "F1 Add Item";
                DumpStatsQ4.Run();

                Global.CurrentMetricDesciption = "Module Total Time";
                DumpStatsQ4.Run();
            }

            Global.CurrentSKU = Global.S4Sku1;
            EnterSKU.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 33";
            Global.Module = "Total Time";
            DumpStatsQ4.Run();

            if (!Global.AbortScenario)
            {
                // Write out metrics buffer
                WriteOutStatsQ4Buffer.Run();
            }
            else
            {
                Global.Q4StatBuffer = "";
            }

            Global.LogText = "<--- fnDoScenario33 Iteration: " + Global.CurrentIteration;
            WriteToLogFile.Run();
            Report.Log(ReportLevel.Info, "Scenario 33 OUT", "Iteration: " + Global.CurrentIteration, new RecordItemIndex(0));

            Thread.Sleep(2000);

            // ***********End Scenario 33*****************
        }
        public void Run()
        {
            Mouse.DefaultMoveTime        = 300;
            Keyboard.DefaultKeyPressTime = 100;
            Delay.SpeedFactor            = 1.0;

            RanorexRepository        repo = new RanorexRepository();
            fnUpdatePALStatusMonitor UpdatePALStatusMonitor = new fnUpdatePALStatusMonitor();
            fnWriteToLogFile         WriteToLogFile         = new fnWriteToLogFile();
            FnWriteOutStatsQ4Buffer  WriteOutStatsQ4Buffer  = new FnWriteOutStatsQ4Buffer();
            fnDumpStatsQ4            DumpStatsQ4            = new fnDumpStatsQ4();
            fnTimeMinusOverhead      TimeMinusOverhead      = new fnTimeMinusOverhead();

            Ranorex.Unknown element = null;
            Global.AbortScenario = false;

            //*****************Start  Scenario 13 - eMail ******************
            Global.CurrentScenario = 13;

            if (!Global.IndirectCall)
            {
                if (!Global.DoScenarioFlag[Global.CurrentScenario])
                //			if(Global.CurrentScenario != 9999)
                {
                    return;
                }
            }

            Global.ScenarioExecuted = true;

            Global.RetechScenariosPerformed++;
            UpdatePALStatusMonitor.Run();

            if (Global.CombinedIPOS)
            {
                repo.GoToBackOffice.Click();
                Thread.Sleep(200);
            }

            // Create new stopwatch
            Stopwatch MystopwatchTT = new Stopwatch();

            MystopwatchTT.Reset();
            MystopwatchTT.Start();
            Stopwatch MystopwatchModuleTotal = new Stopwatch();

            MystopwatchModuleTotal.Reset();
            MystopwatchModuleTotal.Start();

            Stopwatch MystopwatchQ4 = new Stopwatch();

            Global.LogText = @"---> fnDoScenario13 Iteration: " + Global.CurrentIteration;
            WriteToLogFile.Run();
            Report.Log(ReportLevel.Info, "Scenario 13 IN", "Iteration: " + Global.CurrentIteration, new RecordItemIndex(0));

            if (Global.DomesticRegister)
            {
                MystopwatchQ4.Reset();
                MystopwatchQ4.Start();

                Report.Log(ReportLevel.Info, "Mouse", "Mouse Left Click item 'IPOS270141HomeScreen.Element1' at 269;333.", repo.BackOffice275111HomeScreen.BackOffice275111HomeScreenInfo, new RecordItemIndex(0));
                MystopwatchQ4.Reset();
                MystopwatchQ4.Start();
                Global.LogText = @"Clicking on Back Office link";
                WriteToLogFile.Run();
                repo.BackOffice275111HomeScreen.BackOffice275111HomeScreen.Click();
                Global.LogText = @"Waiting for Back Office home screen";
                WriteToLogFile.Run();
                while (!repo.BackOffice275111HomeScreen.BackOffice275111HomeScreen.Enabled)
                {
                    Thread.Sleep(100);
                }

                TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);                   // Subtract overhead and store in Global.Q4StatLine
                Global.CurrentMetricDesciption = "Load Back Office";
                Global.Module = "eMail:";
                DumpStatsQ4.Run();
            }
            else
            {
                repo.IPOSScreen.Self.Click();
            }

            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();

//            Global.LogText = @"Waiting for F6 Cover Artl";
//			WriteToLogFile.Run();
//              while(!Host.Local.TryFindSingle(repo.BackOffice275111HomeScreen.BackOffice275111HomeScreenInfo.AbsolutePath.ToString(), out element))
//            {
//              Thread.Sleep(100);
//            }

            Global.LogText = @"Clicking on F6 Live-eMail";
            WriteToLogFile.Run();

            if (Global.DomesticRegister)
            {
                while (!Host.Local.TryFindSingle(repo.BackOffice275111HomeScreen.BackOffice275111HomeScreenInfo.AbsolutePath.ToString(), out element))
                {
                    Thread.Sleep(100);
                }                                            // change 1/8/17
                repo.BackOffice275111HomeScreen.BackOffice275111HomeScreen.PressKeys("{F6}");
            }
            else
            {
// 08-13-2018	repo.IPOSHomeScreen.InternationalIPOS.PressKeys("{F6}");
                repo.IPOSScreen.Self.PressKeys("{F6}");
            }

            Thread.Sleep(100);
            Global.LogText = @"logging in";
            WriteToLogFile.Run();
            Keyboard.Press("psu");
            Thread.Sleep(100);
            Keyboard.Press("advanced{Return}");

            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);               // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = "[F6] Live eMail and login";
            Global.Module = "eMail:";
            DumpStatsQ4.Run();

            MystopwatchQ4.Reset();
            MystopwatchQ4.Start();

            Global.LogText = @"Waiting for eMail listing";
            WriteToLogFile.Run();
//			while(!repo.MailViewer.Self.Enabled)
//			while(!repo.MailViewer1.Self.Enabled)
            while (!Host.Local.TryFindSingle(repo.MailViewer.EmailScreenTitleInfo.AbsolutePath.ToString(), out element))
            {
                Thread.Sleep(100);
            }

            TimeMinusOverhead.Run((float)MystopwatchQ4.ElapsedMilliseconds);               // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = "display eMail listing";
            Global.Module = "eMail:";
            DumpStatsQ4.Run();

            Global.TempFloat = (float)MystopwatchModuleTotal.ElapsedMilliseconds / 1000;
            TimeMinusOverhead.Run((float)MystopwatchModuleTotal.ElapsedMilliseconds);               // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = @"Module Total Time";
            Global.Module = "eMail:";
            DumpStatsQ4.Run();

            Keyboard.Press("{Escape}");

            TimeMinusOverhead.Run((float)MystopwatchTT.ElapsedMilliseconds);   // Subtract overhead and store in Global.Q4StatLine
            Global.CurrentMetricDesciption = @"Scenario 13";
            Global.Module = "Total Time";
            DumpStatsQ4.Run();

            // Write out metrics buffer
            WriteOutStatsQ4Buffer.Run();

            Global.LogText = "<--- fnDoScenario13 Iteration: " + Global.CurrentIteration;
            WriteToLogFile.Run();
            Report.Log(ReportLevel.Info, "Scenario 13 OUT", "Iteration: " + Global.CurrentIteration, new RecordItemIndex(0));

            if (Global.CombinedIPOS)
            {
                repo.BackOffice275111HomeScreen.Self.Focus();
                repo.BackOffice275111HomeScreen.Self.Click();
                Keyboard.Press("{F5}");
                Thread.Sleep(200);
                if (Host.Local.TryFindSingle(repo.ReservationDeposit.WrongBusinessDateInfo.AbsolutePath.ToString(), out element))
                {
                    Keyboard.Press("{F5}");
                    Thread.Sleep(200);
                }
            }

            return;

            // ***********End Scenario 13*****************
        }
Exemple #29
0
        public void Run()
        {
            // select top 1 SKU from SKU where AllowPre= true and IsDLC=false and dept in (21, 15) and qty <> 0 and ESRBCode<>"M" order by rnd(-(100000*sku)*time())
            Mouse.DefaultMoveTime        = 300;
            Keyboard.DefaultKeyPressTime = 100;
            Delay.SpeedFactor            = 1.0;

            RanorexRepository repo           = new RanorexRepository();
            fnWriteToLogFile  WriteToLogFile = new fnWriteToLogFile();
            fnDumpStatsQ4     DumpStatsQ4    = new fnDumpStatsQ4();

            Global.LogFileIndentLevel++;
            Global.LogText = "IN fFnDataLevelPreOrder";
            WriteToLogFile.Run();

            Global.PreOrderFailed = false;

            // Generates the prerequsite for scenarios 20, 22, 23, and 25  uses Global.CurrentSKU

            //pre requisite start

            // Create new stopwatch
            Stopwatch Mystopwatch = new Stopwatch();

            Mystopwatch.Reset();
            Mystopwatch.Start();

            String strHomePhone = "'" + Global.NextPhoneNumber + "'";

            //create connection string
            String strConnect = @"Provider=Microsoft.JET.OLEDB.4.0;"
                                + @"data source=" + Global.Register1DriveLetter + @":\pos\presell.mdb";

            //prep sql statements
            String strSelectCust = "SELECT TOP 1 CustomerID FROM TBLCUSTOMER WHERE HOMEPHONE = "
                                   + strHomePhone
                                   + " ORDER BY CustomerId DESC";

            //create connection
            OleDbConnection conConnection = new OleDbConnection(strConnect);

            //open connection
            conConnection.Open();
            //Console.WriteLine("ServerVersion: {0} \nDataSource: {1}",conConnection.ServerVersion, conConnection.DataSource);

            //create dataset
            DataSet dsSelectCust = new DataSet();

            //create adapter and fill the dataset
            OleDbDataAdapter adpSelectCust = new OleDbDataAdapter(strSelectCust, conConnection);

            adpSelectCust.Fill(dsSelectCust);

            DataTable dtSelectCust = dsSelectCust.Tables[0];

            if (dtSelectCust.Rows.Count == 0)
            {
                // no record, insert new record
                //Console.WriteLine("No record! Creating customer...");
                //Console.ReadKey();
                String strInsertCust = "INSERT INTO TBLCUSTOMER "
                                       + "(LastName,FirstName,Address1,City,State,Zip,HomePhone) "
                                       + " values ('Asberry','Travis','Po Box 1244','Blue Hill','ME','04614', " + strHomePhone + " )";

                OleDbCommand cmdInsertCust = new OleDbCommand(strInsertCust, conConnection);
                cmdInsertCust.ExecuteNonQuery();
            }

            //select the customer created or selected from database
            OleDbDataAdapter adpSelectCustNew = new OleDbDataAdapter(strSelectCust, conConnection);

            adpSelectCustNew.Fill(dsSelectCust);

            DataTable dtSelectCustNew = dsSelectCust.Tables[0];
            String    strCustomerId   = "'" + Convert.ToString(dtSelectCustNew.Rows[0]["CustomerId"]) + "'";
            //Console.WriteLine("CustomerId: " + strCustomerId);
            //Console.ReadKey();

            //Insert data in tblItems
            //Console.WriteLine("Inserting reserve item...");
            //Console.ReadKey();

            String strInsertItem = "INSERT INTO TBLITEMS "
                                   + "(CustomerID,SKU,Qty,Type,Status) "
                                   + " values ("
                                   + strCustomerId
                                   + ","
                                   + Global.CurrentSKU
                                   + ",1,1,1)";

            OleDbCommand cmdInsertItem = new OleDbCommand(strInsertItem, conConnection);

            cmdInsertItem.ExecuteNonQuery();

            //Select max item id from tblItems
            String strSelectItem = "SELECT TOP 1 ItemID FROM TBLITEMS ORDER BY ItemId DESC";

            //create dataset
            DataSet dsSelectItem = new DataSet();

            //create adapter and fill the dataset
            OleDbDataAdapter adpSelectItem = new OleDbDataAdapter(strSelectItem, conConnection);

            adpSelectItem.Fill(dsSelectItem);

            DataTable dtSelectItem = dsSelectItem.Tables[0];
            String    strItemId    = Convert.ToString(dtSelectItem.Rows[0]["ItemId"]);
            //Console.WriteLine("ItemId: " + strItemId);
            //Console.ReadKey();

            //Insert data in tblDeposits using CustomerID and ItemId from previous queries
            //Console.WriteLine("Inserting deposit...");
            //Console.ReadKey();

            String strInsertDeposit = "INSERT INTO TBLDEPOSITS "
                                      + "(CustomerID,DepositAmount,Status,DepositType,ItemID,OrigTenderType) "
                                      + " values ("
                                      + strCustomerId
                                      + ",5,1,1,"
                                      + strItemId
                                      + ",1)";

            OleDbCommand cmdInsertDeposit = new OleDbCommand(strInsertDeposit, conConnection);

            cmdInsertDeposit.ExecuteNonQuery();

            //Close connection
            conConnection.Close();

            //Console.WriteLine("Done...");

            // pre requisite end

            Global.Q4StatLine = ((float)Mystopwatch.ElapsedMilliseconds / 1000).ToString("R");
            Global.CurrentMetricDesciption = @"Data Level PreOrder";
            Global.Module = "Setup";
            DumpStatsQ4.Run();

            Global.LogText = "OUT fFnDataLevelPreOrder";
            WriteToLogFile.Run();
            Global.LogFileIndentLevel--;
        }
Exemple #30
0
        public void Run(string TempText)
        {
            Mouse.DefaultMoveTime        = 300;
            Keyboard.DefaultKeyPressTime = 100;
            Delay.SpeedFactor            = 1.0;

            RanorexRepository repo           = new RanorexRepository();
            fnWriteToLogFile  WriteToLogFile = new fnWriteToLogFile();
            fnPlayWavFile     PlayWavFile    = new fnPlayWavFile();

            Global.LogFileIndentLevel++;
            Global.LogText = "IN fnParseSwitches";
            WriteToLogFile.Run();

            if (TempText.Contains("/"))
            {                   // Process switches
                if (TempText.Contains("N") | TempText.Contains("L"))
                {               // if any of these are given then reset all and only use ones listed
                    Global.SwitchPhoneNumbersNonLoyalty = false;
                    Global.SwitchPhoneNumbersLoyalty    = false;
                }
                if (TempText.Contains("P"))
                {
                    Global.SwitchPauseBetweenScenariosOff = true;
                }
                if (TempText.Contains("N"))
                {
                    Global.SwitchPhoneNumbersNonLoyalty = true;
                }
                if (TempText.Contains("L"))
                {
                    Global.SwitchPhoneNumbersLoyalty = true;
                }
                if (TempText.Contains("A"))
                {
                    Global.SwitchAllRegistersUseAllPhoneNumbers = true;
                }
                if (TempText.Contains("S"))
                {
                    Global.SwitchScenario9Use40SKUs = true;
                }
                if (TempText.Contains("M"))
                {
                    Global.SwitchMetricOverRide = true;
                }
                if (TempText.Contains("Q"))
                {
                    Global.SwitchQuitRunningOnError = true;
                }
                if (TempText.Contains("U"))
                {
                    Global.SwitchUploadOnly = true; Global.IsPerformanceTest = true;
                }
                if (TempText.Contains("X"))
                {
                    Global.SwitchSkipCustomerLookup = true;
                    if (Global.DoScenarioFlag[17] || Global.DoScenarioFlag[20] ||
                        Global.DoScenarioFlag[21] || Global.DoScenarioFlag[22] || Global.DoScenarioFlag[23] || Global.DoScenarioFlag[25])
                    {
                        Global.WavFilePath = "SlashXSwitchSelections.wav";
                        PlayWavFile.Run();
                    }
                    Global.DoScenarioFlag[17] = false;                          // the /X switch cannot override phone looku
                    Global.DoScenarioFlag[20] = false;
                    Global.DoScenarioFlag[21] = false;
                    Global.DoScenarioFlag[22] = false;
                    Global.DoScenarioFlag[23] = false;
                    Global.DoScenarioFlag[25] = false;
                }
            }
            else if (TempText.Contains("-"))
            {                   // Process a range like 3-5
                string[] RangeItems = TempText.Split('-');

                for (int RangeOff = Convert.ToInt32(RangeItems[0]); RangeOff <= Convert.ToInt32(RangeItems[1]); RangeOff++)
                {
                    Global.DoScenarioFlag[RangeOff] = true;
                }
            }
            else
            {                   // Process single item
                if (TempText != "")
                {
                    Global.DoScenarioFlag[Convert.ToInt32(TempText)] = true;
                }
            }

            Global.LogText = "OUT fnParseSwitches";
            WriteToLogFile.Run();
            Global.LogFileIndentLevel--;
        }