Пример #1
0
        public Result Approve_Method(IWebDriver WDriver, DataRow Approve_Data)
        {
            //KeyWordMethods kwm = new KeyWordMethods();
            //Result result = new Result();
            kwm._WDWait      = kwm.WebDriver_Wait_Handler(WDriver, Constants.ExplicitWaitTime);
            objCommonMethods = new CommonMethods();
            var results = new Result();
            CreateRequirementRepository createRequirementRepository = new CreateRequirementRepository();

            approveModel = createRequirementRepository.GetApproveData(Approve_Data);
            IList <string> approver_list = new List <string>();
            Dictionary <string, string> dict_Approvers = new Dictionary <string, string>();
            Boolean bVal_Approved = false;


            objCommonMethods.SaveScreenShot_EachPage(WDriver, approveModel.strClientName + "_");

            List <string> listExistClients = new List <string>()
            {
                Constants.Discover, Constants.Ryder
            };

            if (!listExistClients.Contains(approveModel.strClientName.ToLower()))
            {
                results = kwm.Client_Change_Click_NewApp(WDriver, KeyWords.locator_ID, KeyWords.ID_MainMenu, approveModel.strClientName);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    Thread.Sleep(100);
                    //Note: Updated the code in the below method.
                    results = kwm.Client_Change_Click_NewApp(WDriver, KeyWords.locator_ID, KeyWords.ID_MainMenu, approveModel.strClientName);
                    if (results.Result1 == KeyWords.Result_FAIL)
                    {
                        Boolean bFlagDropDwon = false;
                        try
                        {
                            bFlagDropDwon = WDriver.FindElement(By.XPath(KeyWords.XPath_supplierMenu_ClientDropDown)).Enabled;
                        }
                        catch
                        {
                            bFlagDropDwon = false;
                        }
                        if (bFlagDropDwon)
                        {
                            return(results);
                        }
                    }
                }
            }

rerun:
            //   click on main menu given name
            results = kwm.Main_Sub_Menu_Click_NewApp(WDriver, KeyWords.locator_ID, KeyWords.ID_MainMenu, approveModel.strMainMenuLink, approveModel.strSubMenuLink);
            if (results.Result1 == KeyWords.Result_FAIL)
            {
                Thread.Sleep(5000);
                results = kwm.Main_Sub_Menu_Click_NewApp(WDriver, KeyWords.locator_ID, KeyWords.ID_MainMenu, approveModel.strMainMenuLink, approveModel.strSubMenuLink);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    //results.ErrorMessage1 = "Unable to click on the Main menu";
                    return(results);
                }
            }

            if (approveModel.strSubMenuLink.ToLower().Contains("identified"))
            {
                if (!kwm.waitForElementExists(WDriver, By.XPath(KeyWords.XPath_SearchBox_IdentifiedRequirements_regReqList), kwm._WDWait))
                {
                    Thread.Sleep(2000);
                }

                //Search requirement
                kwm.sendText(WDriver, KeyWords.locator_XPath, KeyWords.XPath_SearchBox_IdentifiedRequirements_regReqList, approveModel.str_Link_ReqNumber, false);

                //Wait for Requirement to load
                //if (!kwm.waitForElementExists(WDriver, By.XPath(KeyWords.XPath_Img_Processing), kwm._WDWait))
                //{
                //kwm.waitForElementToBeClickable(WDriver, By.XPath("//table[@id='IdentifiedReqList']//td/a[contains(text(),'" + approveModel.str_Link_ReqNumber + "')]"), kwm._WDWait);
                //}
                kwm.waitForElementToBeVisible(WDriver, By.XPath(KeyWords.XPath_Img_IdentifiedHeartBeat), kwm._WDWait);
                kwm.waitForElementToBeClickable(WDriver, By.XPath(KeyWords.XPath_Img_IdentifiedHeartBeat), kwm._WDWait);
                Thread.Sleep(1000);
                objCommonMethods.SaveScreenShot_EachPage(WDriver, approveModel.strClientName + "_");

                //click on Heartbeat link
                kwm.click(WDriver, KeyWords.locator_XPath, KeyWords.XPath_Img_IdentifiedHeartBeat);
            }
            else
            {
                //if (!kwm.waitForElementExists(WDriver, By.XPath(KeyWords.XPath_SearchBox_Requirements_regReqList), kwm._WDWait))
                //{
                //    Thread.Sleep(2000);
                //}

                kwm.waitForElementToBeVisible(WDriver, By.XPath(KeyWords.XPath_SearchBox_Requirements_regReqList), kwm._WDWait);
                kwm.waitForElementToBeClickable(WDriver, By.XPath(KeyWords.XPath_SearchBox_Requirements_regReqList), kwm._WDWait);

                //Search requirement
                kwm.sendText(WDriver, KeyWords.locator_XPath, KeyWords.XPath_SearchBox_Requirements_regReqList, approveModel.str_Link_ReqNumber, false);

                //Wait for Requirement to load
                if (!kwm.waitForElementExists(WDriver, By.XPath(KeyWords.XPath_Img_Processing), kwm._WDWait))
                {
                    kwm.waitForElementToBeClickable(WDriver, By.XPath("//table[@id='regReqList']//td/a[contains(text(),'" + approveModel.str_Link_ReqNumber + "')]"), kwm._WDWait);
                }
                kwm.waitForElementToBeVisible(WDriver, By.XPath("//table[@id='regReqList']//td/a[contains(text(),'" + approveModel.str_Link_ReqNumber + "')]"), kwm._WDWait);
                kwm.waitForElementToBeClickable(WDriver, By.XPath("//table[@id='regReqList']//td/a[contains(text(),'" + approveModel.str_Link_ReqNumber + "')]"), kwm._WDWait);
                Thread.Sleep(1000);
                objCommonMethods.SaveScreenShot_EachPage(WDriver, approveModel.strClientName + "_");
                kwm.waitForElementToBeVisible(WDriver, By.XPath(KeyWords.XPath_Img_HeartBeat), kwm._WDWait);
                kwm.waitForElementToBeClickable(WDriver, By.XPath(KeyWords.XPath_Img_HeartBeat), kwm._WDWait);
                Thread.Sleep(1000);

                //click on Heartbeat link
                kwm.click(WDriver, KeyWords.locator_XPath, KeyWords.XPath_Img_HeartBeat);
            }


            //wait for requirement heartbeat to load
            if (!kwm.waitForElementExists(WDriver, By.XPath("//div[contains(@class,'jsplumb-connected') and not(contains(@class,'approved')) ]/*[1]"), kwm._WDWait))
            {
                kwm.waitForElementExists(WDriver, By.XPath("//div[contains(@class,'jsplumb-connected')]//strong"), kwm._WDWait);
            }
            objCommonMethods.SaveScreenShot_EachPage(WDriver, approveModel.strClientName + "_");

            if (kwm.isElementDisplayedByXPath(WDriver, "//table[@id='workflowContainer']//td//div[not(contains(@class,'approved'))]/ancestor::tbody//following-sibling::*//div[not(contains(@class,'approved')) and not(@id='wEnd')]"))
            {
                //Add all the approvers to list
                foreach (IWebElement Ele in WDriver.FindElements(By.XPath("//div[contains(@class,'jsplumb-connected') and not(contains(@class,'approved')) and not(@id='wEnd')]")))
                {
                    if (Ele.GetAttribute("functioncode").Equals("0"))
                    {
                        approver_list.Add(Ele.FindElement(By.CssSelector("*")).Text);
                    }
                    else
                    {
                        String sTemp = Ele.GetAttribute("id");
                        objCommonMethods.js_Action_MouseOver_Element(WDriver, KeyWords.locator_ID, sTemp);
                        //approver_list.Add(kwm.GetText_Xpath(WDriver, "//div[@role='tooltip' and not(contains(@style,'display: none'))]//ol[1]")._Var + "@MSP");
                        approver_list.Add(kwm.GetText_Xpath(WDriver, "//div[@role='tooltip' and not(contains(@style,'display: none'))]//ol[1]")._Var);
                        objCommonMethods.js_Action_MouseLeave_Element(WDriver);
                    }
                }
            }
            else
            {
                bVal_Approved = true;
            }


            kwm.waitForElementToBeClickable(WDriver, By.XPath(KeyWords.XPath_HearBeatMsgBox_Btn_Close_Close), kwm._WDWait);
            //Close heartBeat
            kwm.click(WDriver, KeyWords.locator_XPath, KeyWords.XPath_HearBeatMsgBox_Btn_Close_Close);

            int iCount = 0;

            //Verifying if the count of the list is greater than zero
            if (approver_list.Count > 0 && !approver_list.Contains(null))
            {
                foreach (string sApproverName in approver_list)
                {
                    /*Checking the user in Client User Management*/
                    //Navigate to Administration->Client User Management
                    results = kwm.Main_Sub_Menu_Click_NewApp(WDriver, KeyWords.locator_ID, KeyWords.ID_MainMenu, "Administration", "Client User Management");
                    if (results.Result1 == KeyWords.Result_FAIL)
                    {
                        Thread.Sleep(5000);
                        results = kwm.Main_Sub_Menu_Click_NewApp(WDriver, KeyWords.locator_ID, KeyWords.ID_MainMenu, "Administration", "Client User Management");
                        if (results.Result1 == KeyWords.Result_FAIL)
                        {
                            //results.ErrorMessage1 = "Unable to click on the Main menu";
                            return(results);
                        }
                    }

                    kwm.waitForElementToBeVisible(WDriver, By.Id(KeyWords.ID_Txt_ClientUserManagement_FirstName_DefaultContent_TxtFname), kwm._WDWait);
                    kwm.waitForElementToBeClickable(WDriver, By.Id(KeyWords.ID_Txt_ClientUserManagement_FirstName_DefaultContent_TxtFname), kwm._WDWait);
                    Thread.Sleep(1000);
                    if (kwm.isElementDisplayed(WDriver, KeyWords.ID_Button_ClientUserManagement_Search_btnSearchClientUser))
                    {
                        //Enter First Name
                        kwm.sendText(WDriver, KeyWords.locator_ID, KeyWords.ID_Txt_ClientUserManagement_FirstName_DefaultContent_TxtFname, sApproverName.Split(',')[1].Trim().Split(' ')[0], false);
                        //Enter Last Name
                        kwm.sendText(WDriver, KeyWords.locator_ID, KeyWords.ID_Txt_ClientUserManagement_LastName_DefaultContent_TxtBoxLname, sApproverName.Split(',')[0].Trim(), false);
                        //Click on Search button
                        results = kwm.click(WDriver, KeyWords.locator_XPath, KeyWords.XPath_Btn_UserManagementSearch);
                        objCommonMethods.SaveScreenShot_EachPage(WDriver, approveModel.strClientName + "_");
                    }

                    try
                    {
                        kwm.waitForElementToBeVisible(WDriver, By.XPath(KeyWords.XPath_Link__SearchResults_ClientUser), kwm._WDWait);
                        kwm.waitForElementToBeClickable(WDriver, By.XPath(KeyWords.XPath_Link__SearchResults_ClientUser), kwm._WDWait);
                        Thread.Sleep(1000);
                        objCommonMethods.Action_Page_Down(WDriver);
                        Thread.Sleep(500);
                        if (kwm.isElementDisplayed(WDriver, KeyWords.ID_MSG_UserManagement))
                        {
                            goto MSPUser;
                        }
                        if (kwm.isElementDisplayedByXPath(WDriver, KeyWords.XPath_Link__SearchResults_ClientUser))
                        {
                            Thread.Sleep(2000);
                            kwm.click(WDriver, KeyWords.locator_XPath, KeyWords.XPath_Link__SearchResults_ClientUser);
                            objCommonMethods.SaveScreenShot_EachPage(WDriver, approveModel.strClientName + "_");
                        }
                        else
                        {
                            kwm.waitForElementExists(WDriver, By.XPath(KeyWords.XPath_Link__SearchResults_ClientUser), kwm._WDWait);
                            kwm.jsClick(WDriver, KeyWords.locator_CSS, "#dgrClientUsers1 tbody tr.odd td a");
                        }
                        goto ViewDesktop;
                    }
                    catch (Exception e)
                    {
                        results.ErrorMessage = "No such user(" + sApproverName + ") is available with the given data";
                        objCommonMethods.SaveScreenShot_EachPage(WDriver, approveModel.strClientName + "_");
                        results.Result1   = KeyWords.Result_FAIL;
                        results.blnResult = false;
                        return(results);
                    }



                    /*If the user is not a Client User , checking if the user is an MSP in MSP User Management.*/
                    //Navigate to Administration->MSP User Management
MSPUser:
                    results = kwm.Main_Sub_Menu_Click_NewApp(WDriver, KeyWords.locator_ID, KeyWords.ID_MainMenu, "Administration", "MSP User Management");
                    if (results.Result1 == KeyWords.Result_FAIL)
                    {
                        Thread.Sleep(5000);
                        results = kwm.Main_Sub_Menu_Click_NewApp(WDriver, KeyWords.locator_ID, KeyWords.ID_MainMenu, "Administration", "MSP User Management");
                        if (results.Result1 == KeyWords.Result_FAIL)
                        {
                            //results.ErrorMessage1 = "Unable to click on the Main menu";
                            return(results);
                        }
                    }
                    kwm.waitForElementToBeVisible(WDriver, By.Id(KeyWords.ID_Txt_MSPUserManagement_FirstName_DefaultContent_TxtFirstName), kwm._WDWait);
                    kwm.waitForElementToBeClickable(WDriver, By.Id(KeyWords.ID_Txt_MSPUserManagement_FirstName_DefaultContent_TxtFirstName), kwm._WDWait);
                    Thread.Sleep(1000);
                    //Added by manjusha
                    if (kwm.isElementDisplayed(WDriver, KeyWords.ID_Button_MspUserManagement_Search_btnSearchMspUser))
                    {
                        //Enter First Name
                        kwm.sendText(WDriver, KeyWords.locator_ID, KeyWords.ID_Txt_MSPUserManagement_FirstName_DefaultContent_TxtFirstName, sApproverName.Split(',')[1].Trim().Split(' ')[0], false);
                        //Enter Last Name
                        kwm.sendText(WDriver, KeyWords.locator_ID, KeyWords.ID_Txt_MSPUserManagement_LastName_DefaultContent_TxtLastName, sApproverName.Split(',')[0].Trim(), false);
                        //Click on Search button
                        results = kwm.click(WDriver, KeyWords.locator_XPath, KeyWords.XPath_Btn_UserManagementSearch);
                        objCommonMethods.SaveScreenShot_EachPage(WDriver, approveModel.strClientName + "_");
                    }

                    try
                    {
                        kwm.waitForElementToBeVisible(WDriver, By.XPath(KeyWords.XPath_Link__SearchResults_MSPUser), kwm._WDWait);
                        kwm.waitForElementToBeClickable(WDriver, By.XPath(KeyWords.XPath_Link__SearchResults_MSPUser), kwm._WDWait);
                        Thread.Sleep(1000);
                        objCommonMethods.Action_Page_Down(WDriver);
                        Thread.Sleep(500);
                        //if (kwm.isElementDisplayed(WDriver, KeyWords.ID_MSG_UserManagement))
                        //{
                        //    goto sameMSP;
                        //}
                        if (kwm.isElementDisplayedByXPath(WDriver, KeyWords.XPath_Link__SearchResults_ClientUser))
                        {
                            Thread.Sleep(2000);
                            kwm.click(WDriver, KeyWords.locator_XPath, KeyWords.XPath_Link__SearchResults_ClientUser);
                            if (results.Result1 == KeyWords.Result_FAIL)
                            {
                                kwm.click(WDriver, KeyWords.locator_XPath, KeyWords.XPath_Link__SearchResults_MspUser);
                            }
                            objCommonMethods.SaveScreenShot_EachPage(WDriver, approveModel.strClientName + "_");
                        }
                        else
                        {
                            kwm.waitForElementExists(WDriver, By.XPath(KeyWords.XPath_Link__SearchResults_ClientUser), kwm._WDWait);
                            kwm.jsClick(WDriver, KeyWords.locator_CSS, "#dgrClientUsers1 tbody tr.odd td a");
                        }
                    }
                    catch (Exception e)
                    {
                        results.ErrorMessage = "No such user(" + sApproverName + ") is available with the given data";
                        objCommonMethods.SaveScreenShot_EachPage(WDriver, approveModel.strClientName + "_");
                        results.Result1 = KeyWords.Result_FAIL;
                        return(results);
                    }

ViewDesktop:
                    kwm.waitForElementToBeVisible(WDriver, By.Id("mainContainer_1"), kwm._WDWait);

                    try
                    {
                        kwm.jsClick(WDriver, KeyWords.locator_ID, KeyWords.ID_Link_ClientUser_ViewDesktop_DefaultContent_LblViewDesktop);
                        if (results.Result1 == KeyWords.Result_FAIL)
                        {
                            objCommonMethods.Action_Page_Down(WDriver);
                            results = kwm.jsClick(WDriver, KeyWords.locator_ID, KeyWords.ID_Link_ClientUser_ViewDesktop_DefaultContent_LblViewDesktop);
                        }
                    }
                    catch (Exception e)
                    {
                        objCommonMethods.Action_Page_Down(WDriver);
                        results = kwm.click(WDriver, KeyWords.locator_ID, KeyWords.ID_Link_ClientUser_ViewDesktop_DefaultContent_LblViewDesktop);
                        if (results.Result1 == KeyWords.Result_FAIL)
                        {
                            return(results);
                        }
                    }
                    kwm.waitForElementToBeVisible(WDriver, By.XPath("//ul[@class='logoDropdown']//li//div"), kwm._WDWait);
                    objCommonMethods.SaveScreenShot_EachPage(WDriver, approveModel.strClientName + "_");


                    //   click on main menu given name
                    results = kwm.Main_Sub_Menu_Click_NewApp(WDriver, KeyWords.locator_ID, KeyWords.ID_MainMenu, approveModel.strMainMenuLink, approveModel.strSubMenuLink);
                    if (results.Result1 == KeyWords.Result_FAIL)
                    {
                        Thread.Sleep(5000);
                        results = kwm.Main_Sub_Menu_Click_NewApp(WDriver, KeyWords.locator_ID, KeyWords.ID_MainMenu, approveModel.strMainMenuLink, approveModel.strSubMenuLink);
                        if (results.Result1 == KeyWords.Result_FAIL)
                        {
                            //results.ErrorMessage1 = "Unable to click on the Main menu";
                            return(results);
                        }
                    }



                    objCommonMethods.SaveScreenShot_EachPage(WDriver, approveModel.strClientName + "_");


                    if (approveModel.strSubMenuLink.ToLower().Contains("identified"))
                    {
                        results = kwm.Main_Sub_Menu_Click_NewApp(WDriver, KeyWords.locator_ID, KeyWords.ID_MainMenu, approveModel.strMainMenuLink, approveModel.strSubMenuLink);
                        if (!kwm.waitForElementExists(WDriver, By.XPath(KeyWords.XPath_SearchBox_IdentifiedRequirements_regReqList), kwm._WDWait))
                        {
                            Thread.Sleep(2000);
                        }

                        //Search requirement
                        kwm.sendText(WDriver, KeyWords.locator_XPath, KeyWords.XPath_SearchBox_IdentifiedRequirements_regReqList, approveModel.str_Link_ReqNumber, false);
                        objCommonMethods.SaveScreenShot_EachPage(WDriver, approveModel.strClientName + "_");
                        //Wait for Requirement to load
                        if (!kwm.waitForElementExists(WDriver, By.XPath(KeyWords.XPath_Img_Processing), kwm._WDWait))
                        {
                            if (kwm.waitForElementToBeClickable(WDriver, By.XPath("//table[@id='IdentifiedReqList']//td[2]/a"), kwm._WDWait))
                            {
                                results.ErrorMessage = "Requirement Link is displayed and clickable";
                            }
                            else
                            {
                                if (!kwm.isElementDisplayedByXPath(WDriver, "//table[@id='IdentifiedReqList']//td[2]/a"))
                                {
                                    objCommonMethods.SaveScreenShot_EachPage(WDriver, approveModel.strClientName + "_");
                                    throw new Exception("Requirement link is not displayed for the client user");
                                }
                            }
                        }
                        //click on the retrieved requirement
                        WDriver.FindElement(By.XPath("//table[@id='IdentifiedReqList']//td[2]/a")).Click();
                    }
                    else
                    {
                        //if (!kwm.waitForElementExists(WDriver, By.XPath(KeyWords.XPath_SearchBox_Requirements_regReqList), kwm._WDWait))
                        //{
                        //    Thread.Sleep(2000);
                        //}
                        kwm.waitForElementToBeVisible(WDriver, By.XPath(KeyWords.XPath_SearchBox_Requirements_regReqList), kwm._WDWait);
                        kwm.waitForElementToBeClickable(WDriver, By.XPath(KeyWords.XPath_SearchBox_Requirements_regReqList), kwm._WDWait);


                        //Search requirement
                        kwm.sendText(WDriver, KeyWords.locator_XPath, KeyWords.XPath_SearchBox_Requirements_regReqList, approveModel.str_Link_ReqNumber, false);
                        objCommonMethods.SaveScreenShot_EachPage(WDriver, approveModel.strClientName + "_");
                        //Wait for Requirement to load
                        if (!kwm.waitForElementExists(WDriver, By.XPath(KeyWords.XPath_Img_Processing), kwm._WDWait))
                        {
                            if (kwm.waitForElementToBeClickable(WDriver, By.XPath("//table[@id='regReqList']//td[2]/a"), kwm._WDWait))
                            {
                                results.ErrorMessage = "Requirement Link is displayed and clicable";
                            }
                            else
                            {
                                if (!kwm.isElementDisplayedByXPath(WDriver, "//table[@id='regReqList']//td[2]/a"))
                                {
                                    objCommonMethods.SaveScreenShot_EachPage(WDriver, approveModel.strClientName + "_");
                                    throw new Exception("Requirement link is not displayed for the client user");
                                }
                            }
                        }
                        //click on the retrieved requirement
                        WDriver.FindElement(By.XPath("//table[@id='regReqList']//td[2]/a")).Click();
                    }


                    //check (or) wait for approve link
                    kwm.waitForElementToBeVisible(WDriver, By.XPath(KeyWords.XPath_Link_Approve_reqApprove), kwm._WDWait);

                    objCommonMethods.SaveScreenShot_EachPage(WDriver, approveModel.strClientName + "_");

                    if (approveModel.str_Link_Approve.ToLower().Contains("approve"))
                    {
                        Approver_Approve(WDriver);
                    }
                    else
                    {
                        //  Approver_Reject(WDriver);
                        iCount++;
                        break;
                    }

                    objCommonMethods.SaveScreenShot_EachPage(WDriver, approveModel.strClientName + "_");

                    //click on Return Link
                    if (!sApproverName.Contains("@"))
                    {
                        kwm.click(WDriver, KeyWords.locator_XPath, KeyWords.XPath_Link_Return);
                    }
                    //Wait till the page gets loaded
                    kwm.waitForElementToBeClickable(WDriver, By.XPath(KeyWords.XPath_list_LogoDropdown), kwm._WDWait);
                    objCommonMethods.SaveScreenShot_EachPage(WDriver, approveModel.strClientName + "_");
                    iCount++;
                    if (!sQueueStatus.ToLower().Contains("approval"))
                    {
                        break;
                    }
                }

                if (approver_list.Count != iCount)
                {
                    goto rerun;
                }
            }
            else if (bVal_Approved)
            {
                results.Result1      = KeyWords.Result_PASS;
                results.ErrorMessage = KeyWords.MSG_strApprovesuccessfully;
                return(results);
            }
            else
            {
                results.Result1      = KeyWords.Result_FAIL;
                results.ErrorMessage = "Approver List is not available";
                return(results);
            }

            results.Result1      = KeyWords.Result_PASS;
            results.ErrorMessage = KeyWords.MSG_strApprovesuccessfully;
            return(results);
        }
Пример #2
0
        public Result ConfirmCW_Method(IWebDriver WDriver, DataRow ConfirmCW_Data, int SupExecutionRowNo)
        {
            KeyWordMethods kwm = new KeyWordMethods();
            CommonMethods  objCommonMethods  = new CommonMethods();
            var            results           = new Result();
            var            Result_ScreenShot = new Result();
            List <string>  listExistClients  = new List <string>()
            {
            };
            CreateRequirementRepository createRequirementRepository = new CreateRequirementRepository();
            ConfirmCWModel confirmCWModel = createRequirementRepository.GetConfirmCWData(ConfirmCW_Data);

            kwm._WDWait = kwm.WebDriver_Wait_Handler(WDriver, 100);



            listExistClients = new List <string>()
            {
                Constants.Discover
            };
            if (listExistClients.Contains(confirmCWModel.strClientName.ToLower()))
            {
                results = kwm.Client_Change_Click_NewApp_Discover(WDriver, KeyWords.locator_ID, KeyWords.ID_MainMenu, confirmCWModel.strClientName);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    Thread.Sleep(5000);
                    results = kwm.Client_Change_Click_NewApp_Discover(WDriver, KeyWords.locator_ID, KeyWords.ID_MainMenu, confirmCWModel.strClientName);
                    if (results.Result1 == KeyWords.Result_FAIL)
                    {
                        Boolean bFlagDropDwon = false;
                        try
                        {
                            bFlagDropDwon = WDriver.FindElement(By.XPath(KeyWords.XPath_supplierMenu_ClientDropDown)).Enabled;
                        }
                        catch
                        {
                            bFlagDropDwon = false;
                        }
                        if (bFlagDropDwon)
                        {
                            return(results);
                        }
                    }
                }
            }
            listExistClients = new List <string>()
            {
                Constants.Discover
            };
            if (!listExistClients.Contains(confirmCWModel.strClientName.ToLower()))
            {
                results = kwm.Client_Change_Click_NewApp(WDriver, KeyWords.locator_ID, KeyWords.ID_MainMenu, confirmCWModel.strClientName);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    Thread.Sleep(5000);
                    results = kwm.Client_Change_Click_NewApp(WDriver, KeyWords.locator_ID, KeyWords.ID_MainMenu, confirmCWModel.strClientName);
                    if (results.Result1 == KeyWords.Result_FAIL)
                    {
                        Boolean bFlagDropDwon = false;
                        try
                        {
                            bFlagDropDwon = WDriver.FindElement(By.XPath(KeyWords.XPath_supplierMenu_ClientDropDown)).Enabled;
                        }
                        catch
                        {
                            bFlagDropDwon = false;
                        }
                        if (bFlagDropDwon)
                        {
                            return(results);
                        }
                    }
                }
            }

            objCommonMethods.SaveScreenShot_EachPage(WDriver, confirmCWModel.strClientName + "_");

            results = kwm.Main_Sub_Menu_Click_NewApp(WDriver, KeyWords.locator_ID, KeyWords.ID_MainMenu, confirmCWModel.strMainMenuLink, confirmCWModel.strSubMenuLink);
            if (results.Result1 == KeyWords.Result_FAIL)
            {
                Thread.Sleep(5000);
                results = kwm.Main_Sub_Menu_Click_NewApp(WDriver, KeyWords.locator_ID, KeyWords.ID_MainMenu, confirmCWModel.strMainMenuLink, confirmCWModel.strSubMenuLink);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    //results.ErrorMessage1 = "Unable to click on the Main menu";
                    return(results);
                }
            }
            objCommonMethods.SaveScreenShot_EachPage(WDriver, confirmCWModel.strClientName + "_");
            string strSubLevel = "";

            if (confirmCWModel.strSubMenuLink.ToLower().Trim() != "candidate with offers")
            {
                try
                {
                    new WebDriverWait(WDriver, TimeSpan.FromSeconds(300)).Until(ExpectedConditions.ElementExists((By.XPath(KeyWords.XPath_paginate_regReqList_filter))));
                }
                catch
                {
                    for (int i = 0; i < 10; i++)
                    {
                        try
                        {
                            if (WDriver.FindElement(By.XPath(KeyWords.XPath_paginate_regReqList_filter)).Displayed)
                            {
                                break;
                            }
                            Thread.Sleep(100);
                        }
                        catch
                        {
                            //
                        }
                    }
                }

                bool waiting = kwm.waitForElementToBeClickable(WDriver, By.XPath(KeyWords.XPath_SearchBox_Requirements_regReqList), kwm._WDWait);
                if (!waiting)
                {
                    kwm.waitForElementToBeClickable(WDriver, By.XPath(KeyWords.XPath_SearchBox_Requirements_regReqList), kwm._WDWait);
                }

                //Requirement number passed into search text box


                kwm.sendTextXPathOnly(WDriver, KeyWords.ID_paginate_regReqList_filter, confirmCWModel.str_Link_ReqNumber);
                //Wait until reuirement link or record is displaying
                kwm.waitForElementToBeClickable(WDriver, By.XPath(KeyWords.XPath_link_Reuirementnumber_Req), kwm._WDWait);

                //added for discover - to wait until the invisible of second row
                bool CWtimewait = kwm.waitForElementInvisible(WDriver, By.XPath(KeyWords.XPath_secondrow), kwm._WDWait);
                if (!CWtimewait)
                {
                    kwm.waitForElementInvisible(WDriver, By.XPath(KeyWords.XPath_secondrow), kwm._WDWait);
                }

                //Requirement number click

                kwm.Action_LookInto_Element(WDriver, KeyWords.locator_XPath, "//*[@id='regReqList']/tbody/tr/td//a[contains(text(),'" + confirmCWModel.str_Link_ReqNumber + "')]");
                kwm.waitForElementToBeVisible(WDriver, By.XPath("//*[@id='regReqList']/tbody/tr/td//a[contains(text(),'" + confirmCWModel.str_Link_ReqNumber + "')]"), kwm._WDWait);
                Thread.Sleep(2000);
                results = kwm.click(WDriver, KeyWords.locator_XPath, "//*[@id='regReqList']/tbody/tr/td//a[contains(text(),'" + confirmCWModel.str_Link_ReqNumber + "')]");
                //Wait until left menu is loading
                kwm.waitForElementToBeVisible(WDriver, By.Id(KeyWords.ID_List_listMenu1), kwm._WDWait);

                objCommonMethods.SaveScreenShot_EachPage(WDriver, confirmCWModel.strClientName + "_");


                //View candidate link click
                strSubLevel = "";
                objCommonMethods.SaveScreenShot_EachPage(WDriver, confirmCWModel.strClientName + "_");
                results = kwm.list_Menu_Click(WDriver, KeyWords.locator_ID, KeyWords.ID_List_listMenu1, confirmCWModel.str_Link_ActionList_ViewCandidates, strSubLevel);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    Thread.Sleep(5000);
                    results = kwm.list_Menu_Click(WDriver, KeyWords.locator_ID, KeyWords.ID_List_listMenu1, confirmCWModel.str_Link_ActionList_ViewCandidates, strSubLevel);
                    if (results.Result1 == KeyWords.Result_FAIL)
                    {
                        return(results);
                    }
                }


                //Wait for view candidates results page
                kwm.waitForElementToBeVisible(WDriver, By.XPath(KeyWords.XPath_txt_viewcanddates_Search), kwm._WDWait);
                kwm.waitForElementToBeClickable(WDriver, By.XPath(KeyWords.XPath_txt_viewcanddates_Search), kwm._WDWait);
                //Candidate name passed into text box
                results = kwm.sendTextXPathOnly(WDriver, KeyWords.XPath_txt_viewcanddates_Search, confirmCWModel.str_CandidateName);
                kwm.waitForElementToBeVisible(WDriver, By.XPath(KeyWords.XPath_link_Candidatename_MSP), kwm._WDWait);
                kwm.waitForElementToBeClickable(WDriver, By.XPath(KeyWords.XPath_link_Candidatename_MSP), kwm._WDWait);
                //Candidate name click
                //  kwm.click(WDriver, KeyWords.locator_XPath, KeyWords.XPath_link_Candidatename_MSP);
                Thread.Sleep(3000);
                if (confirmCWModel.str_CandidateName != "")
                {
                    try
                    {
                        // string strXpath_CandidateNameLink = "//table[contains(@id,'HistoryTable')]//td//a[text()[normalize-space()= '" + confirmCWModel.str_CandidateName + "']]";
                        string strXpath_CandidateNameLink = "//table[contains(@id,'regularCandidateListWithOffer')]//td//a[text()[normalize-space()= '" + confirmCWModel.str_CandidateName + "']]";
                        kwm.Action_LookInto_Element(WDriver, KeyWords.locator_XPath, strXpath_CandidateNameLink);
                        kwm.waitForElementToBeClickable(WDriver, By.XPath(strXpath_CandidateNameLink), kwm._WDWait);
                        //Candidate name click
                        kwm.click(WDriver, KeyWords.locator_XPath, strXpath_CandidateNameLink);
                        //   WDriver.FindElement(By.LinkText(confirmCWModel.str_CandidateName)).Click();
                    }
                    catch
                    {
                        Thread.Sleep(100);
                        try
                        {
                            WDriver.FindElement(By.LinkText(confirmCWModel.str_CandidateName)).Click();
                        }
                        catch
                        {
                            // Console.WriteLine(bFlag);
                            results.Result1      = KeyWords.Result_FAIL;
                            results.ErrorMessage = "The given candidate name not find " + confirmCWModel.str_CandidateName;
                            return(results);
                        }
                    }
                }
                kwm.waitForElementToBeVisible(WDriver, By.Id(KeyWords.ID_List_listMenu1), kwm._WDWait);


                objCommonMethods.SaveScreenShot_EachPage(WDriver, confirmCWModel.strClientName + "_");


                //Wait for view candidates results page
                //kwm.waitForElementToBeVisible(WDriver, By.XPath(KeyWords.XPath_Pageload_Candidatestable_MSP), kwm._WDWait);
                //Candidate name passed into text box
                //results = kwm.sendTextXPathOnly(WDriver, KeyWords.XPath_txt_viewcanddates_Search, confirmCWModel.str_CandidateName);

                //kwm.waitForElementToBeClickable(WDriver, By.XPath(KeyWords.XPath_link_Candidatename_MSP), kwm._WDWait);
                //Candidate name click
                //kwm.click(WDriver, KeyWords.locator_XPath, KeyWords.XPath_link_Candidatename_MSP);

                //kwm.waitForElementToBeVisible(WDriver, By.Id(KeyWords.ID_List_listMenu1), kwm._WDWait);
            }
            if (confirmCWModel.strSubMenuLink.ToLower().Trim() == "candidate with offers")
            {
                //*[@id="identifiedCandidateListWithOffers_filter"]/label/input
                if (!kwm.waitForElementExists(WDriver, By.XPath("//*[@id='identifiedCandidateListWithOffers_filter']//label//input"), kwm._WDWait))
                {
                    Thread.Sleep(2000);
                }
                if (!kwm.waitForElementToBeVisible(WDriver, By.XPath("//*[@id='identifiedCandidateListWithOffers_filter']//label//input"), kwm._WDWait))
                {
                    Thread.Sleep(2000);
                }
                results = kwm.Action_LookInto_Element(WDriver, KeyWords.locator_XPath, "//*[@id='identifiedCandidateListWithOffers_filter']//label//input");
                kwm.sendTextXPathOnly(WDriver, "//*[@id='identifiedCandidateListWithOffers_filter']//label//input", confirmCWModel.str_CandidateName);

                kwm.waitForElementToBeClickable(WDriver, By.XPath("//*[@id='identifiedCandidateListWithOffers']//tbody/tr/td[2]/a[contains(text(),'" + confirmCWModel.str_CandidateName + "')]"), kwm._WDWait);

                objCommonMethods.SaveScreenShot_EachPage(WDriver, confirmCWModel.strClientName + "_");

                results = kwm.click(WDriver, KeyWords.locator_XPath, "//*[@id='identifiedCandidateListWithOffers']//tbody/tr/td[2]/a[contains(text(),'" + confirmCWModel.str_CandidateName + "')]");
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    kwm.waitForElementToBeClickable(WDriver, By.XPath("//*[@id='identifiedCandidateListWithOffers']//tbody/tr/td[2]/a[contains(text(),'" + confirmCWModel.str_CandidateName + "')]"), kwm._WDWait);
                    Thread.Sleep(2000);
                    results = kwm.click(WDriver, KeyWords.locator_XPath, "//*[@id='identifiedCandidateListWithOffers']//tbody/tr/td[2]/a[contains(text(),'" + confirmCWModel.str_CandidateName + "')]");
                }

                //*[@id="identifiedCandidateListWithOffers"]/tbody/tr/td[2]/a
                objCommonMethods.SaveScreenShot_EachPage(WDriver, confirmCWModel.strClientName + "_");
            }
            objCommonMethods.SaveScreenShot_EachPage(WDriver, confirmCWModel.strClientName + "_");

            results = kwm.list_Menu_Click(WDriver, KeyWords.locator_ID, KeyWords.ID_List_listMenu1, confirmCWModel.str_Link_ActionList_ConfirmCW, strSubLevel);
            if (results.Result1 == KeyWords.Result_FAIL)
            {
                Thread.Sleep(1000);
                results = kwm.list_Menu_Click(WDriver, KeyWords.locator_ID, KeyWords.ID_List_listMenu1, confirmCWModel.str_Link_ActionList_ConfirmCW, strSubLevel);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    return(results);
                }
            }

            for (int z = 1; z < 100; z++)
            {
                Boolean strValue = false;
                try
                {
                    strValue = WDriver.FindElement(By.Id("lastName")).Displayed;
                }
                catch
                {
                    kwm.list_Menu_Click(WDriver, KeyWords.locator_ID, KeyWords.ID_List_listMenu1, confirmCWModel.str_Link_ActionList_ConfirmCW, strSubLevel);
                }
                //  Console.WriteLine("z -----> " + z);
                //  Console.WriteLine("strValue -----> " + strValue);
                if (strValue)
                {
                    break;
                }
            }

            objCommonMethods.SaveScreenShot_EachPage(WDriver, confirmCWModel.strClientName + "_");
            //    Thread.Sleep(10000);
            kwm.click(WDriver, KeyWords.locator_ID, "tabsExpandCollapse");
            //for (int z = 1; z < 100; z++)
            //{
            //    objCommonMethods.Action_Page_UP(WDriver);
            //    Thread.Sleep(1000);
            //    objCommonMethods.Action_Page_UP(WDriver);
            //    kwm.click(WDriver, KeyWords.locator_ID, KeyWords.ID_tabsAll);
            //    Thread.Sleep(1000);
            //    string strImgName = "";
            //    try
            //    {
            //        strImgName = WDriver.FindElement(By.XPath("//*[@id='tabsAll']/img")).GetAttribute("src");
            //    }
            //    catch
            //    {
            //        strImgName = "";
            //    }
            //    //  Console.WriteLine("z -----> " + z);
            //    //  Console.WriteLine("strValue -----> " + strValue);
            //    if (strImgName.Contains("minusBlue-20.png"))
            //    {
            //        break;
            //    }
            //}


            objCommonMethods.SaveScreenShot_EachPage(WDriver, confirmCWModel.strClientName + "_");



            switch (confirmCWModel.strClientName.ToLower())
            {
            case Constants.Sts:
            {
                ConfirmPerClient.ConfirmSTS(confirmCWModel, results, kwm, WDriver, objCommonMethods);

                break;
            }

            //case Constants.IsGs:
            //    {
            //        ConfirmPerClient.ConfirmISGS(confirmCWModel, results, kwm, WDriver, objCommonMethods);
            //        break;
            //    }
            case Constants.EBS:
            {
                ConfirmPerClient.ConfirmEBS(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.RMS:
            {
                ConfirmPerClient.ConfirmRMS(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.STGEN:
            {
                ConfirmPerClient.ConfirmSTGEN(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.STTM:
            {
                ConfirmPerClient.ConfirmSTTM(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.MFC:
            {
                ConfirmPerClient.ConfirmMFC(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }
            //case Constants.NvEnergy:
            //    {
            //        ConfirmPerClient.ConfirmNVENERGY(confirmCWModel, results, kwm, WDriver, objCommonMethods);
            //        break;
            //    }


            //case Constants.AmCom:
            //    {
            //        ConfirmPerClient.ConfirmAmCom(confirmCWModel, results, kwm, WDriver, objCommonMethods);
            //        break;
            //    }
            //case Constants.DCR:
            //    {
            //        ConfirmPerClient.ConfirmDCR(confirmCWModel, results, kwm, WDriver, objCommonMethods);
            //        break;
            //    }

            //case Constants.Meritor:
            //    {
            //        ConfirmPerClient.ConfirmMeritor(confirmCWModel, results, kwm, WDriver, objCommonMethods);
            //        break;
            //    }
            //case Constants.GHC:
            //    {
            //        ConfirmPerClient.ConfirmGHC(confirmCWModel, results, kwm, WDriver, objCommonMethods);
            //        break;
            //    }

            //case Constants.BDA:
            //    {
            //        ConfirmPerClient.ConfirmBDA(confirmCWModel, results, kwm, WDriver, objCommonMethods);
            //        break;
            //    }
            case Constants.Arkema:
            {
                ConfirmPerClient.ConfirmArkema(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            //case Constants.Aero:
            //    {
            //        ConfirmPerClient.ConfirmAero(confirmCWModel, results, kwm, WDriver, objCommonMethods);
            //        break;
            //    }
            case Constants.Supervalu:
            {
                ConfirmPerClient.ConfirmSupervalu(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.Caesars:
            {
                ConfirmPerClient.ConfirmCaesars(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.Epri:
            {
                ConfirmPerClient.ConfirmEpri(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            //case Constants.Costco:
            //    {
            //        ConfirmPerClient.ConfirmCostco(confirmCWModel, results, kwm, WDriver, objCommonMethods);
            //        break;
            //    }
            case Constants.Discover:
            {
                ConfirmPerClient.ConfirmDiscover(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.Keybank:
            {
                ConfirmPerClient.ConfirmKeybank(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.Welchallyn:
            {
                ConfirmPerClient.ConfirmWelchallyn(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.APS:
            {
                ConfirmPerClient.ConfirmAPS(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.StewartTitle:
            {
                ConfirmPerClient.ConfirmStewartTitle(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.Dyncorp:
            {
                ConfirmPerClient.ConfirmDyncorp(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.Altria:
            {
                ConfirmPerClient.ConfirmAltria(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.Ryder:
            {
                ConfirmPerClient.ConfirmRyder(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.KCPL:
            {
                ConfirmPerClient.ConfirmKCPL(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.EMERSON:
            {
                ConfirmPerClient.ConfirmEmerson(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.SallieMae:
            {
                ConfirmPerClient.ConfirmSallieMae(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            //case Constants.DcrSallieMae:
            //    {
            //        ConfirmPerClient.ConfirmDcrSallieMae(confirmCWModel, results, kwm, WDriver, objCommonMethods);
            //        break;
            //    }
            case Constants.SOF:
            {
                ConfirmPerClient.ConfirmSOF(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.HillRom:
            {
                ConfirmPerClient.ConfirmHillRom(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.Bimbo:
            {
                ConfirmPerClient.ConfirmBimbo(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            //case Constants.Martiz:
            //    {
            //        ConfirmPerClient.ConfirmMartiz(confirmCWModel, results, kwm, WDriver, objCommonMethods);
            //        break;
            //    }
            case Constants.Colgate:
            {
                ConfirmPerClient.ConfirmColgate(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            //case Constants.STNow:
            //    {
            //        ConfirmPerClient.ConfirmSTNow(confirmCWModel, results, kwm, WDriver, objCommonMethods);
            //        break;
            //    }
            case Constants.ThermoFisher:
            {
                ConfirmPerClient.ConfirmThermoFisher(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.SunTrust:
            {
                ConfirmPerClient.ConfirmSunTrust(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.Tufts:
            {
                ConfirmPerClient.ConfirmTufts(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.PHHMortgage:
            {
                ConfirmPerClient.ConfirmPHHMortgage(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.Cpchem:
            {
                ConfirmPerClient.ConfirmCpchem(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.Tesla:
            {
                ConfirmPerClient.ConfirmTesla(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.COE:
            {
                ConfirmPerClient.ConfirmCOE(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.Georgetown:
            {
                ConfirmPerClient.ConfirmGeorgetown(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.QuickenLoans:
            {
                ConfirmPerClient.ConfirmQuickenLoans(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.YP:
            {
                ConfirmPerClient.ConfirmYP(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.Lear:
            {
                ConfirmPerClient.ConfirmLear(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.EQT:
            {
                ConfirmPerClient.ConfirmEQT(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            case Constants.SIGMA:
            {
                ConfirmPerClient.ConfirmSIGMA(confirmCWModel, results, kwm, WDriver, objCommonMethods);
                break;
            }

            default:
            {
                break;
            }
            }

            objCommonMethods.Action_Page_Down(WDriver);

            objCommonMethods.SaveScreenShot_EachPage(WDriver, confirmCWModel.strClientName + "_");
            if (confirmCWModel.str_Btn_ConfirmCW_Submit.ToLower().Trim() != "Confirm CW")
            {
                results = kwm.click(WDriver, KeyWords.locator_ID, "UpdateCWButton");

                //   results = kwm.select_MSG_Button(WDriver, KeyWords.locator_type, KeyWords.locator_button, confirmCWModel.str_Btn_ConfirmCW_Submit);

                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    objCommonMethods.Action_Page_Down(WDriver);
                    results = kwm.click(WDriver, KeyWords.locator_ID, "UpdateCWButton");
                    //  results = kwm.select_MSG_Button(WDriver, KeyWords.locator_type, KeyWords.locator_button, confirmCWModel.str_Btn_ConfirmCW_Submit);
                    if (results.Result1 == KeyWords.Result_FAIL)
                    {
                        return(results);
                    }
                }
            }
            else
            {
                results.Result1      = KeyWords.Result_FAIL;
                results.ErrorMessage = "Given button name not find " + confirmCWModel.str_Btn_ConfirmCW_Submit;
                return(results);
            }


            objCommonMethods.SaveScreenShot_EachPage(WDriver, confirmCWModel.strClientName + "_");
            results = kwm.Error_Msg_Read_Submit_Resume_details(WDriver, "//div[@" + KeyWords.locator_ID + "='ulMspUserError']/li");
            if (results.Result1 == KeyWords.Result_PASS)
            {
                if (results.ErrorMessage != "")
                {
                    results.Result1 = KeyWords.Result_FAIL;
                    return(results);
                }
            }
            objCommonMethods.SaveScreenShot_EachPage(WDriver, confirmCWModel.strClientName + "_");
            kwm._WDWait = kwm.WebDriver_Wait_Handler(WDriver, 10);

            kwm.waitForElementToBeVisible(WDriver, By.XPath("//*[contains(@" + KeyWords.locator_type + ", '" + KeyWords.locator_button + "') and text()='" + confirmCWModel.str_Btn_ConfirmCW_Submit_Confirm.Trim() + "']"), kwm._WDWait);
            kwm.waitForElementToBeClickable(WDriver, By.XPath("//*[contains(@" + KeyWords.locator_type + ", '" + KeyWords.locator_button + "') and text()='" + confirmCWModel.str_Btn_ConfirmCW_Submit_Confirm.Trim() + "']"), kwm._WDWait);
            results = kwm.select_MSG_Button(WDriver, KeyWords.locator_type, KeyWords.locator_button, confirmCWModel.str_Btn_ConfirmCW_Submit_Confirm);
            if (results.Result1 == KeyWords.Result_FAIL)
            {
                Thread.Sleep(5000);
                results = kwm.select_MSG_Button(WDriver, KeyWords.locator_type, KeyWords.locator_button, confirmCWModel.str_Btn_ConfirmCW_Submit_Confirm);
            }



            Thread.Sleep(2000);

            objCommonMethods.SaveScreenShot_EachPage(WDriver, confirmCWModel.strClientName + "_");


            kwm.waitForElementToBeVisible(WDriver, By.XPath("//*[contains(@" + KeyWords.locator_type + ", '" + KeyWords.locator_button + "') and text()='" + confirmCWModel.str_Btn_ConfirmCW_Submit_Confirm_Ok.Trim() + "']"), kwm._WDWait);
            kwm.waitForElementToBeClickable(WDriver, By.XPath("//*[contains(@" + KeyWords.locator_type + ", '" + KeyWords.locator_button + "') and text()='" + confirmCWModel.str_Btn_ConfirmCW_Submit_Confirm_Ok.Trim() + "']"), kwm._WDWait);
            results = kwm.select_MSG_Button(WDriver, KeyWords.locator_type, KeyWords.locator_button, confirmCWModel.str_Btn_ConfirmCW_Submit_Confirm_Ok);
            if (results.Result1 == KeyWords.Result_FAIL)
            {
                Thread.Sleep(2000);
                results = kwm.select_MSG_Button(WDriver, KeyWords.locator_type, KeyWords.locator_button, confirmCWModel.str_Btn_ConfirmCW_Submit_Confirm_Ok);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    return(results);
                }
            }


            //  Thread.Sleep(10000);
            results.Result1      = KeyWords.Result_PASS;
            results.ErrorMessage = "Confirm CW";
            return(results);
        }
Пример #3
0
        public Result Confirm_Int(IWebDriver WDriver, DataRow Confirm_Interview)
        {
            ReadExcel      ReadExcelHelper   = new ReadExcel();
            KeyWordMethods kwm               = new KeyWordMethods();
            CommonMethods  objCommonMethods  = new CommonMethods();
            var            results           = new Result();
            var            Result_ScreenShot = new Result();
            // Rate_Change objRateChange = new Rate_Change();

            CreateRequirementRepository createRequirementRepository = new CreateRequirementRepository();
            ConfirmInterviewModel       Confrim_Interview_Model     = createRequirementRepository.GetConfirmInterviewModel(Confirm_Interview);

            //SubmitCandidateAddResume submitCandidateAddResume = createRequirementRepository.GetSubmitCandidateAddResumeData(Confirm_Interview);


            //CLient selection
            results = kwm.Client_Change_Click_NewApp(WDriver, KeyWords.locator_ID, KeyWords.ID_MainMenu, Confrim_Interview_Model.strClientName);
            if (results.Result1 == KeyWords.Result_FAIL)
            {
                Thread.Sleep(5000);
                results = kwm.Client_Change_Click_NewApp(WDriver, KeyWords.locator_ID, KeyWords.ID_MainMenu, Confrim_Interview_Model.strClientName);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    //results.ErrorMessage1 = "Unable to click on the Main menu";
                    return(results);
                }
            }

            objCommonMethods.SaveScreenShot_EachPage(WDriver, Confrim_Interview_Model.strClientName + "_");
            //submenu click

            results = kwm.Main_Sub_Menu_Click_NewApp(WDriver, KeyWords.locator_ID, KeyWords.ID_MainMenu, Confrim_Interview_Model.strMainMenuLink, Confrim_Interview_Model.strSubMenuLink);
            if (results.Result1 == KeyWords.Result_FAIL)
            {
                Thread.Sleep(5000);
                results = kwm.Main_Sub_Menu_Click_NewApp(WDriver, KeyWords.locator_ID, KeyWords.ID_MainMenu, Confrim_Interview_Model.strMainMenuLink, Confrim_Interview_Model.strSubMenuLink);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    //results.ErrorMessage1 = "Unable to click on the Main menu";
                    return(results);
                }
            }

            // Status list
            //if (Confrim_Interview_Model.str_Select_Statuslist != "")
            //{
            //    results = kwm.select(WDriver, KeyWords.locator_ID, KeyWords.ID_Select_Statuslist, Confrim_Interview_Model.str_Select_Statuslist);
            //    if (results.Result1 == KeyWords.Result_FAIL)
            //    {
            //        try
            //        {
            //            SelectElement se = new SelectElement(WDriver.FindElement(By.Id(KeyWords.ID_Select_Statuslist))); //Locating select list
            //            se.SelectByIndex(0);
            //        }
            //        catch
            //        {
            //            //
            //        }
            //    }
            //    Thread.Sleep(100);
            //   // WDriver.FindElement(By.Id(KeyWords.ID_Btn_SearchBtn)).Click();
            //    Thread.Sleep(1000);
            //}


            // Data is passed into search text box
            kwm._WDWait = kwm.WebDriver_Wait_Handler(WDriver, 30);
            try
            {
                Thread.Sleep(3000);
                kwm.waitForElementToBeClickable(WDriver, By.Id(KeyWords.ID_paginate_regReqList_filter), kwm._WDWait);
                WDriver.FindElement(By.XPath(KeyWords.ID_paginate_regReqList_filter)).Clear();

                WDriver.FindElement(By.XPath(KeyWords.ID_paginate_regReqList_filter)).SendKeys(Confrim_Interview_Model.str_Txt_ReqNumber);
            }
            catch
            {
                try
                {
                    WDriver.FindElement(By.XPath(KeyWords.ID_paginate_regReqList_filter)).Clear();
                    WDriver.FindElement(By.XPath(KeyWords.ID_paginate_regReqList_filter)).SendKeys(Confrim_Interview_Model.str_Txt_ReqNumber);
                }
                catch
                {
                    //
                }
            }

            // After seraching, requirement number  click
            Thread.Sleep(2000);
            // WDriver.FindElement(By.LinkText(Confrim_Interview_Model.str_Txt_ReqNumber)).Click();

            Thread.Sleep(2000);
            // WDriver.FindElement(By.LinkText(Confrim_Interview_Model.str_Txt_ReqNumber)).Click();
            kwm.waitForElementToBeClickable(WDriver, By.LinkText(Confrim_Interview_Model.str_Txt_ReqNumber), kwm._WDWait);
            results = kwm.click(WDriver, KeyWords.locator_LinkText, Confrim_Interview_Model.str_Txt_ReqNumber);
            if (results.Result1 == KeyWords.Result_FAIL)
            {
                Thread.Sleep(2000);
                results = kwm.click(WDriver, KeyWords.locator_LinkText, Confrim_Interview_Model.str_Txt_ReqNumber);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    Thread.Sleep(2000);
                    results = kwm.click(WDriver, KeyWords.locator_LinkText, Confrim_Interview_Model.str_Txt_ReqNumber);
                    if (results.Result1 == KeyWords.Result_FAIL)
                    {
                        Thread.Sleep(2000);
                        results = kwm.click(WDriver, KeyWords.locator_LinkText, Confrim_Interview_Model.str_Txt_ReqNumber);
                    }
                }
                return(results);
            }
            //Loading message
            for (int z = 1; z < 500; z++)
            {
                Boolean strValue = true;
                try
                {
                    strValue = WDriver.FindElement(By.Id("loading-message")).Displayed;
                }
                catch
                {
                    strValue = true;
                }

                //  Console.WriteLine("z -----> " + z);
                //  Console.WriteLine("strValue -----> " + strValue);
                if (!strValue)
                {
                    break;
                }
                Thread.Sleep(1000);
            }

            //View candidate link click
            results = kwm.Action_LookInto_Element(WDriver, KeyWords.locator_XPath, "//a[contains(text(),'" + Confrim_Interview_Model.str_Link_View_Candidates + "')]");

            //string strSubLevel = "./label";
            // string strSubLevel = "";
            objCommonMethods.SaveScreenShot_EachPage(WDriver, Confrim_Interview_Model.strClientName + "_");
            results = kwm.jsClick(WDriver, KeyWords.locator_XPath, "//a[contains(text(),'" + Confrim_Interview_Model.str_Link_View_Candidates + "')]");
            //results = kwm.list_Menu_Click(WDriver, KeyWords.locator_ID, KeyWords.ID_List_listMenu1, Confrim_Interview_Model.str_Link_View_Candidates, strSubLevel);
            //if (results.Result1 == KeyWords.Result_FAIL)
            //{
            //    objCommonMethods.Action_Page_Down(WDriver);
            //    Thread.Sleep(5000);
            //    results = kwm.list_Menu_Click(WDriver, KeyWords.locator_ID, KeyWords.ID_List_listMenu1, Confrim_Interview_Model.str_Link_View_Candidates, strSubLevel);
            //    if (results.Result1 == KeyWords.Result_FAIL)
            //    {
            //        return results;
            //    }
            //}
            for (int z = 1; z < 1000; z++)
            {
                Boolean strValue = true;
                try
                {
                    strValue = WDriver.FindElement(By.Id("loading-message")).Displayed;
                }
                catch
                {
                    strValue = true;
                }

                //  Console.WriteLine("z -----> " + z);
                //  Console.WriteLine("strValue -----> " + strValue);
                if (!strValue)
                {
                    break;
                }
                Thread.Sleep(100);
            }


            Thread.Sleep(1000);

            // Search Candidate Name
            if (Confrim_Interview_Model.str_Txt_CandidateName != "")
            {
                new WebDriverWait(WDriver, TimeSpan.FromSeconds(300)).Until(ExpectedConditions.ElementExists((By.XPath(KeyWords.Xpath_Txt_CandidateName))));
                WDriver.FindElement(By.XPath(KeyWords.Xpath_Txt_CandidateName)).Clear();
                kwm.sendText_clr(WDriver, KeyWords.locator_XPath, KeyWords.Xpath_Txt_CandidateName, Confrim_Interview_Model.str_Txt_CandidateName);

                //   WDriver.FindElement(By.XPath(KeyWords.Xpath_Txt_CandidateName)).SendKeys(Confrim_Interview_Model.str_Txt_CandidateName);
                kwm.sendText(WDriver, KeyWords.locator_XPath, KeyWords.Xpath_Txt_CandidateName, Confrim_Interview_Model.str_Txt_CandidateName, false);
            }

            Thread.Sleep(1000);



            // Click on Candidate Name
            if (Confrim_Interview_Model.str_Txt_CandidateName != "")
            {
                try
                {
                    WDriver.FindElement(By.LinkText(Confrim_Interview_Model.str_Txt_CandidateName)).Click();
                }
                catch
                {
                    Thread.Sleep(100);
                    try
                    {
                        kwm.Action_LookInto_Element(WDriver, KeyWords.locator_LinkText, Confrim_Interview_Model.str_Txt_CandidateName);
                        Thread.Sleep(1000);
                        WDriver.FindElement(By.PartialLinkText(Confrim_Interview_Model.str_Txt_CandidateName)).Click();
                    }
                    catch
                    {
                        // Console.WriteLine(bFlag);
                        results.Result1      = KeyWords.Result_FAIL;
                        results.ErrorMessage = "The given candidate name not find " + Confrim_Interview_Model.str_Txt_CandidateName;
                        return(results);
                    }
                }
            }



            Thread.Sleep(1000);



            // To check Confirm Interview link is displaying
            try
            {
                new WebDriverWait(WDriver, TimeSpan.FromSeconds(300)).Until(ExpectedConditions.ElementExists((By.Id(KeyWords.ID_List_listMenu1))));
            }
            catch
            {
                objCommonMethods.WriteLogFileTestCaseErrorResult(KeyWords.strLogfilePath, "Action list is not displayed", 3);
                for (int i = 0; i < 10; i++)
                {
                    try
                    {
                        if (WDriver.FindElement(By.Id(KeyWords.ID_List_listMenu1)).Displayed)
                        {
                            break;
                        }
                        Thread.Sleep(100);
                    }
                    catch
                    {
                    }
                }
            }

            // To click on Confirm Interview link

            string strSubLevel1 = "";

            // string strSubLevel = "./label";
            results = kwm.list_Menu_Click(WDriver, KeyWords.locator_ID, KeyWords.ID_List_listMenu1, Confrim_Interview_Model.str_Link_ConfirmInterview, strSubLevel1);
            if (results.Result1 == KeyWords.Result_FAIL)
            {
                //added by pradeep
                Thread.Sleep(5000);
                objCommonMethods.Action_Page_Down(WDriver);
                results = kwm.list_Menu_Click(WDriver, KeyWords.locator_ID, KeyWords.ID_List_listMenu1, Confrim_Interview_Model.str_Link_ConfirmInterview, strSubLevel1);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    objCommonMethods.Action_Page_Down(WDriver);
                    results = kwm.list_Menu_Click(WDriver, KeyWords.locator_ID, KeyWords.ID_List_listMenu1, Confrim_Interview_Model.str_Link_ConfirmInterview, strSubLevel1);
                    return(results);
                }
                //end
            }

            // Confirm Interview Window
            try
            {
                new WebDriverWait(WDriver, TimeSpan.FromSeconds(300)).Until(ExpectedConditions.ElementExists((By.Id(KeyWords.ID_Candidate_Int_DialogWindow))));
            }
            catch
            {
            }

            // Requested Interviews
            try
            {
                SelectElement se = new SelectElement(WDriver.FindElement(By.Id(KeyWords.ID_Txt_Requested_Interview))); //Locating select list
                se.SelectByIndex(0);
            }
            catch
            {
                //
            }

            // Confirmed interview Date/Time
            kwm.click(WDriver, KeyWords.locator_ID, KeyWords.ID_Date_FirChoice);

            if (Confrim_Interview_Model.str_Txt_Confirm_IntDate != "")
            {
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    results = kwm.sendText(WDriver, KeyWords.locator_ID, KeyWords.ID_Txt_Confirmed_IntDate, Confrim_Interview_Model.str_Txt_Confirm_IntDate, false);
                    if (results.Result1 == KeyWords.Result_FAIL)
                    {
                        results = kwm.Select_End_Date_From_Picker(WDriver, Confrim_Interview_Model.str_Txt_Confirm_IntDate);
                    }
                }
            }
            else
            {
                var      today    = DateTime.Now;
                var      tomorrow = today.AddDays(1);
                DateTime date     = tomorrow;
                Confrim_Interview_Model.str_Txt_Confirm_IntDate = date.ToString("MM/dd/yyyy");
                results = kwm.sendText(WDriver, KeyWords.locator_ID, KeyWords.ID_Date_SecChoice, Confrim_Interview_Model.str_Txt_Confirm_IntDate, false);
            }
            // Select Time
            if (Confrim_Interview_Model.str_Select_SupplierTime != "")
            {
                results = kwm.select(WDriver, KeyWords.locator_ID, KeyWords.ID_Txt_TimeofInterview, Confrim_Interview_Model.str_Select_SupplierTime);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    try
                    {
                        SelectElement se = new SelectElement(WDriver.FindElement(By.Id(KeyWords.ID_Txt_TimeofInterview))); //Locating select list
                        se.SelectByIndex(3);
                    }
                    catch
                    {
                        //
                    }
                }
            }

            // Select Zone
            if (Confrim_Interview_Model.str_Select_SupplierZone != "")
            {
                results = kwm.select(WDriver, KeyWords.locator_ID, KeyWords.ID_Txt_ZoneofInterview, Confrim_Interview_Model.str_Select_SupplierZone);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    try
                    {
                        SelectElement se = new SelectElement(WDriver.FindElement(By.Id(KeyWords.ID_Txt_ZoneofInterview))); //Locating select list
                        se.SelectByIndex(3);
                    }
                    catch
                    {
                        //
                    }
                }
            }

            // Primary Phone
            if (Confrim_Interview_Model.str_Txt_PrimaryPhone != "")
            {
                results = kwm.sendText(WDriver, KeyWords.locator_ID, KeyWords.ID_Txt_PmyPhone, Confrim_Interview_Model.str_Txt_PrimaryPhone, false);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    //  return results;
                }
            }

            // Alternate Phone
            if (Confrim_Interview_Model.str_Txt_SecondaryPhone != "")
            {
                results = kwm.sendText(WDriver, KeyWords.locator_ID, KeyWords.ID_Txt_SecPhone, Confrim_Interview_Model.str_Txt_SecondaryPhone, false);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    //  return results;
                }
            }

            // Comment
            if (Confrim_Interview_Model.str_Txt_Sche_Comment != "")
            {
                results = kwm.sendText(WDriver, KeyWords.locator_ID, KeyWords.ID_Txt_ConfirmInt_Comment, Confrim_Interview_Model.str_Txt_Sche_Comment, false);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    //  return results;
                }
            }
            objCommonMethods.Action_Page_Down(WDriver);

            // Confirm Interview button
            results = kwm.select_MSG_Button(WDriver, KeyWords.locator_class, KeyWords.locator_class_button, Confrim_Interview_Model.str_Btn_ConfirmInterview);
            if (results.Result1 == KeyWords.Result_FAIL)
            {
                Thread.Sleep(3000);
                results = kwm.select_MSG_Button(WDriver, KeyWords.locator_type, KeyWords.locator_class_button, Confrim_Interview_Model.str_Btn_ConfirmInterview);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    return(results);
                }
            }

            // To maintain error log messages in log files
            objCommonMethods.SaveScreenShot_EachPage(WDriver, Confrim_Interview_Model.strClientName + "_");
            results = kwm.Error_Msg_Read_Submit_Resume_details(WDriver, "//*[@" + KeyWords.locator_ID + "='ulMspUserError']/li");

            //results = kwm.Error_Msg_Read_Submit_Resume_details(WDriver, "//div[@" + KeyWords.locator_ID + "= KeyWords.ID_Error_Valmessages]/div/ul/li");

            if (results.Result1 == KeyWords.Result_PASS)
            {
                if (results.ErrorMessage != "")
                {
                    results.Result1 = KeyWords.Result_FAIL;
                    return(results);
                }
            }


            // Confirmation popup with YES/NO
            results = kwm.select_MSG_Button(WDriver, KeyWords.locator_type, KeyWords.locator_button, Confrim_Interview_Model.str_Btn_Yes_Action_ConfirmInt);
            if (results.Result1 == KeyWords.Result_FAIL)
            {
                Thread.Sleep(3000);
                results = kwm.select_MSG_Button(WDriver, KeyWords.locator_type, KeyWords.locator_button, Confrim_Interview_Model.str_Btn_Yes_Action_ConfirmInt);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    return(results);
                }
            }


            // Click on OK button
            results = kwm.select_MSG_Button(WDriver, KeyWords.locator_type, KeyWords.locator_button, Confrim_Interview_Model.str_Btn_OK_ConfirmInt);
            if (results.Result1 == KeyWords.Result_FAIL)
            {
                Thread.Sleep(13000);
                results = kwm.select_MSG_Button(WDriver, KeyWords.locator_type, KeyWords.locator_button, Confrim_Interview_Model.str_Btn_OK_ConfirmInt);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    Thread.Sleep(15000);
                    results = kwm.select_MSG_Button(WDriver, KeyWords.locator_type, KeyWords.locator_button, Confrim_Interview_Model.str_Btn_OK_ConfirmInt);
                    if (results.Result1 == KeyWords.Result_FAIL)
                    {
                        return(results);
                    }
                }
            }

            results.Result1      = KeyWords.Result_PASS;
            results.ErrorMessage = KeyWords.MSG_str_Confirm_Interview_Done;
            //  results.ErrorMessage = "Invoice Batch created Successfully done  -->  " + strBatchNumberCreated;
            return(results);
        }
Пример #4
0
        public Result Sche_Interview(IWebDriver WDriver, DataRow Schedule_Interview)
        {
            ReadExcel      ReadExcelHelper   = new ReadExcel();
            KeyWordMethods kwm               = new KeyWordMethods();
            CommonMethods  objCommonMethods  = new CommonMethods();
            var            results           = new Result();
            var            Result_ScreenShot = new Result();

            // Rate_Change objRateChange = new Rate_Change();
            kwm._WDWait = kwm.WebDriver_Wait_Handler(WDriver, 30);
            CreateRequirementRepository createRequirementRepository = new CreateRequirementRepository();
            ScheduleInterviewModel      Schedule_Interview_Model    = createRequirementRepository.GetScheduleInterviewModel(Schedule_Interview);

            // SubmitCandidateAddResume submitCandidateAddResume = createRequirementRepository.GetSubmitCandidateAddResumeData(Schedule_Interview);

            objCommonMethods.SaveScreenShot_EachPage(WDriver, Schedule_Interview_Model.strClientName + "_");

            //CLient selection
            Boolean bFlagDropDwon = false;

            try
            {
                bFlagDropDwon = WDriver.FindElement(By.XPath(KeyWords.XPath_supplierMenu_ClientDropDown)).Enabled;
            }
            catch
            {
                bFlagDropDwon = false;
            }
            if (bFlagDropDwon)
            {
                results = kwm.SupplierClient_Change_Click_NewApp(WDriver, KeyWords.locator_ID, KeyWords.ID_MainMenu, Schedule_Interview_Model.strClientName);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    //Thread.Sleep(000);
                    results = kwm.SupplierClient_Change_Click_NewApp(WDriver, KeyWords.locator_ID, KeyWords.ID_MainMenu, Schedule_Interview_Model.strClientName);
                    if (results.Result1 == KeyWords.Result_FAIL)
                    {
                        return(results);
                    }
                }
            }
            // Select Main & Sub Menu's
            objCommonMethods.SaveScreenShot_EachPage(WDriver, Schedule_Interview_Model.strClientName + "_");

            results = kwm.Main_Sub_Menu_Click_NewApp(WDriver, KeyWords.locator_ID, KeyWords.ID_MainMenu, Schedule_Interview_Model.strMainMenuLink, Schedule_Interview_Model.strSubMenuLink);
            if (results.Result1 == KeyWords.Result_FAIL)
            {
                Thread.Sleep(5000);
                results = kwm.Main_Sub_Menu_Click_NewApp(WDriver, KeyWords.locator_ID, KeyWords.ID_MainMenu, Schedule_Interview_Model.strMainMenuLink, Schedule_Interview_Model.strSubMenuLink);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    //results.ErrorMessage1 = "Unable to click on the Main menu";
                    return(results);
                }
            }



            // Search Requirement number
            try
            {
                new WebDriverWait(WDriver, TimeSpan.FromSeconds(300)).Until(ExpectedConditions.ElementExists((By.Id(KeyWords.ID_Txt_SearchReq))));
                Thread.Sleep(2000);
                WDriver.FindElement(By.Id(KeyWords.ID_Txt_SearchReq)).Clear();

                WDriver.FindElement(By.Id(KeyWords.ID_Txt_SearchReq)).SendKeys(Schedule_Interview_Model.str_Txt_ReqNumber);
            }
            catch
            {
                try
                {
                    WDriver.FindElement(By.Id(KeyWords.ID_Txt_SearchReq)).Clear();
                    WDriver.FindElement(By.Id(KeyWords.ID_Txt_SearchReq)).SendKeys(Schedule_Interview_Model.str_Txt_ReqNumber);
                }
                catch
                {
                    //
                }
            }
            Thread.Sleep(1000);
            kwm.Action_LookInto_Element(WDriver, KeyWords.locator_LinkText, Schedule_Interview_Model.str_Txt_ReqNumber);
            // Click on Requirement number
            if (Schedule_Interview_Model.str_Txt_ReqNumber != "")
            {
                results = kwm.click(WDriver, KeyWords.locator_LinkText, Schedule_Interview_Model.str_Txt_ReqNumber);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    objCommonMethods.Action_Page_Down(WDriver);
                    kwm.Action_LookInto_Element(WDriver, KeyWords.locator_XPath, "//td[@class=' wrapNormal']//a[contains(text(),'" + Schedule_Interview_Model.str_Txt_ReqNumber + "')]");
                    results = kwm.click(WDriver, KeyWords.locator_LinkText, Schedule_Interview_Model.str_Txt_ReqNumber);
                    if (results.Result1 == KeyWords.Result_FAIL)
                    {
                        results.Result1      = KeyWords.Result_FAIL;
                        results.ErrorMessage = "The given CW number not find " + Schedule_Interview_Model.str_Txt_ReqNumber;
                        return(results);
                    }
                }
            }
            else
            {
                results.Result1      = KeyWords.Result_FAIL;
                results.ErrorMessage = "The given CW number is empty ";
                return(results);
            }



            // To check Submitted candidates link is displaying
            try
            {
                new WebDriverWait(WDriver, TimeSpan.FromSeconds(300)).Until(ExpectedConditions.ElementExists((By.XPath(KeyWords.Xpath_Link_SubmittedCand))));
            }
            catch
            {
                objCommonMethods.WriteLogFileTestCaseErrorResult(KeyWords.strLogfilePath, "Submitted candidates link is not displayed", 3);
                for (int i = 0; i < 10; i++)
                {
                    try
                    {
                        if (WDriver.FindElement(By.XPath(KeyWords.Xpath_Link_SubmittedCand)).Displayed)
                        {
                            break;
                        }
                        Thread.Sleep(100);
                    }
                    catch
                    {
                    }
                }
            }

            // To click on Submitted candidates link
            string strSubLevel = "";

            results = kwm.list_Menu_Click(WDriver, KeyWords.locator_ID, KeyWords.ID_Link_SubmittedCandidate, Schedule_Interview_Model.str_Link_Subcaniddates, strSubLevel);
            if (results.Result1 == KeyWords.Result_FAIL)
            {
                Thread.Sleep(5000);
                results = kwm.list_Menu_Click(WDriver, KeyWords.locator_ID, KeyWords.ID_Link_SubmittedCandidate, Schedule_Interview_Model.str_Link_Subcaniddates, strSubLevel);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    return(results);
                }
            }

            // Search Candidate Name
            try
            {
                new WebDriverWait(WDriver, TimeSpan.FromSeconds(300)).Until(ExpectedConditions.ElementExists((By.Id(KeyWords.ID_Txt_SearchCand))));
                Thread.Sleep(2000);
                WDriver.FindElement(By.Id(KeyWords.ID_Txt_SearchCand)).Clear();

                WDriver.FindElement(By.Id(KeyWords.ID_Txt_SearchCand)).SendKeys(Schedule_Interview_Model.str_Txt_CandidateName);
            }
            catch
            {
                try
                {
                    WDriver.FindElement(By.Id(KeyWords.ID_Txt_SearchCand)).Clear();
                    WDriver.FindElement(By.Id(KeyWords.ID_Txt_SearchCand)).SendKeys(Schedule_Interview_Model.str_Txt_CandidateName);
                }
                catch
                {
                    //
                }
            }
            Thread.Sleep(200);



            // Click on Candidate Name
            if (Schedule_Interview_Model.str_Txt_CandidateName != "")
            {
                try
                {
                    WDriver.FindElement(By.LinkText(Schedule_Interview_Model.str_Txt_CandidateName)).Click();
                }
                catch
                {
                    Thread.Sleep(100);
                    try
                    {
                        WDriver.FindElement(By.PartialLinkText(Schedule_Interview_Model.str_Txt_CandidateName)).Click();
                    }
                    catch
                    {
                        // Console.WriteLine(bFlag);
                        results.Result1      = KeyWords.Result_FAIL;
                        results.ErrorMessage = "The given candidate name not find " + Schedule_Interview_Model.str_Txt_CandidateName;
                        return(results);
                    }
                }
            }


            // To check Schedule Interview link is displaying
            try
            {
                new WebDriverWait(WDriver, TimeSpan.FromSeconds(300)).Until(ExpectedConditions.ElementExists((By.Id(KeyWords.ID_List_listMenu1))));
            }
            catch
            {
                objCommonMethods.WriteLogFileTestCaseErrorResult(KeyWords.strLogfilePath, "Action list is not displayed", 3);
                for (int i = 0; i < 10; i++)
                {
                    try
                    {
                        if (WDriver.FindElement(By.Id(KeyWords.ID_List_listMenu1)).Displayed)
                        {
                            break;
                        }
                        Thread.Sleep(100);
                    }
                    catch
                    {
                    }
                }
            }

            // To click on Schedule interview link

            string strSubLevel1 = "";

            // string strSubLevel = "./label";
            results = kwm.list_Menu_Click(WDriver, KeyWords.locator_ID, KeyWords.ID_List_listMenu1, Schedule_Interview_Model.str_Link_ScheInterview, strSubLevel1);
            if (results.Result1 == KeyWords.Result_FAIL)
            {
                Thread.Sleep(5000);
                results = kwm.list_Menu_Click(WDriver, KeyWords.locator_ID, KeyWords.ID_List_listMenu1, Schedule_Interview_Model.str_Link_ScheInterview, strSubLevel1);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    return(results);
                }
            }

            // Schedule Interview Window
            try
            {
                new WebDriverWait(WDriver, TimeSpan.FromSeconds(300)).Until(ExpectedConditions.ElementExists((By.Id(KeyWords.ID_Candidate_Int_DialogWindow))));
            }
            catch
            {
            }

            // Interview Accepted(Radio button)
            if (Schedule_Interview_Model.str_Radio_Interview_Accepted != "")
            {
                if (Schedule_Interview_Model.str_Radio_Interview_Accepted.ToLower().Equals(KeyWords.str_String_Compare_yes))
                {
                    results = objCommonMethods.Select_Radio_Button(WDriver, "AcceptedRadio", "1");

                    // Confirm Interview Schedule
                    if (Schedule_Interview_Model.str_Radio_ConfirmInterview != "")
                    {
                        if (Schedule_Interview_Model.str_Radio_ConfirmInterview.ToLower().Equals(KeyWords.str_String_Compare_yes))
                        {
                            results = objCommonMethods.Select_Radio_Button(WDriver, "ConfirmInterview", "1");
                        }

                        else
                        {
                            Thread.Sleep(1000);
                            results = objCommonMethods.Select_Radio_Button(WDriver, "ConfirmInterview", "3");
                            Thread.Sleep(1000);

                            //Date
                            kwm.click(WDriver, KeyWords.locator_ID, KeyWords.ID_Date_Schedule_ScheduleDate);

                            if (Schedule_Interview_Model.str_ScheduleDate != "")
                            {
                                results = kwm.Select_Date_From_Picker(WDriver, DateTime.Today);
                                if (results.Result1 == KeyWords.Result_FAIL)
                                {
                                    results = kwm.sendText(WDriver, KeyWords.locator_ID, KeyWords.ID_Date_Schedule_ScheduleDate, Schedule_Interview_Model.str_ScheduleDate, false);
                                    if (results.Result1 == KeyWords.Result_FAIL)
                                    {
                                        //return results;
                                    }
                                }
                            }

                            //kwm.click(WDriver, KeyWords.locator_ID, KeyWords.ID_Txt_ScheduleDate);
                            //DateTime today = DateTime.Now;
                            //DateTime date = today.AddDays(1);
                            //Schedule_Interview_Model.str_ScheduleDate = date.ToString("MM/dd/yyyy");

                            //  results = kwm.sendText(WDriver, KeyWords.locator_ID, KeyWords.ID_Date_ScheFirChoice, Schedule_Interview_Model.str_ScheduleDate, false);
                            Thread.Sleep(2000);

                            // Select Time1
                            if (Schedule_Interview_Model.str_Select_Time1 != "")
                            {
                                results = kwm.select(WDriver, KeyWords.locator_ID, KeyWords.ID_Select_ScheTime, Schedule_Interview_Model.str_Select_Time1);
                                if (results.Result1 == KeyWords.Result_FAIL)
                                {
                                    try
                                    {
                                        SelectElement se = new SelectElement(WDriver.FindElement(By.Id(KeyWords.ID_Select_ScheTime))); //Locating select list
                                        se.SelectByIndex(3);
                                    }
                                    catch
                                    {
                                        //
                                    }
                                }
                            }


                            // Select Zone1
                            if (Schedule_Interview_Model.str_Select_Zone1 != "")
                            {
                                results = kwm.select(WDriver, KeyWords.locator_ID, KeyWords.ID_Select_ScheZone, Schedule_Interview_Model.str_Select_Zone1);
                                if (results.Result1 == KeyWords.Result_FAIL)
                                {
                                    try
                                    {
                                        SelectElement se = new SelectElement(WDriver.FindElement(By.Id(KeyWords.ID_Select_ScheZone))); //Locating select list
                                        se.SelectByIndex(3);
                                    }
                                    catch
                                    {
                                        //
                                    }
                                }
                            }

                            //Time Zone

                            if (Schedule_Interview_Model.str_Select_TimeZone_ScheduleZone != "")
                            {
                                results = kwm.select(WDriver, KeyWords.locator_ID, KeyWords.ID_Select_TimeZone_ScheduleZone, Schedule_Interview_Model.str_Select_TimeZone_ScheduleZone);
                                if (results.Result1 == KeyWords.Result_FAIL)
                                {
                                    try
                                    {
                                        SelectElement se = new SelectElement(WDriver.FindElement(By.Id(KeyWords.ID_Select_TimeZone_ScheduleZone))); //Locating select list
                                        se.SelectByIndex(3);
                                    }
                                    catch
                                    {
                                        //
                                    }
                                }
                            }



                            //  kwm.click(WDriver, KeyWords.locator_ID, KeyWords.ID_Select_ScheduleTime);

                            //if (Interview_Process_Model.str_Date_FirChoice != "")
                            //{
                            //    //results = kwm.Select_End_Date_From_Picker(WDriver, createRequirementModel.strDateAssignmentEnd);
                            //    // if (results.Result1 == KeyWords.Result_FAIL)
                            //    // {
                            //    results = kwm.sendText(WDriver, KeyWords.locator_ID, KeyWords.ID_Date_FirChoice, Interview_Process_Model.str_Date_FirChoice, false);
                            //    if (results.Result1 == KeyWords.Result_FAIL)
                            //    {
                            //        //return results;
                            //    }
                            //    // }
                            //}
                            //else
                            //{
                            //    DateTime date = DateTime.Today;
                            //    Interview_Process_Model.str_Date_FirChoice = date.ToString("MM/dd/yyyy");
                            //    results = kwm.sendText(WDriver, KeyWords.locator_ID, KeyWords.ID_Date_FirChoice, Interview_Process_Model.str_Date_FirChoice, false);

                            //}
                        }
                    }
                    else
                    {
                        results = objCommonMethods.Select_Radio_Button(WDriver, "ConfirmInterview", "2");
                    }
                }

                else
                {
                    results = objCommonMethods.Select_Radio_Button(WDriver, "AcceptedRadio", "0");
                    Thread.Sleep(1000);
                    // Reject reason
                    SelectElement se = new SelectElement(WDriver.FindElement(By.Id(KeyWords.ID_Select_RejectReason))); //Locating select list
                    se.SelectByIndex(1);
                }
            }
            else
            {
                results = objCommonMethods.Select_Radio_Button(WDriver, "AcceptedRadio", "0");
                Thread.Sleep(1000);
                // Reject reason
                SelectElement se = new SelectElement(WDriver.FindElement(By.Id(KeyWords.ID_Select_RejectReason))); //Locating select list
                se.SelectByIndex(1);
            }


            Thread.Sleep(2000);
            // Primary Phone
            if (Schedule_Interview_Model.str_Txt_PrimaryPhone != "")
            {
                results = kwm.sendText_clr_backspace_phone(WDriver, KeyWords.locator_ID, KeyWords.ID_Txt_PrimaryPhone, Schedule_Interview_Model.str_Txt_PrimaryPhone);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    //  return results;
                }
            }
            Thread.Sleep(2000);
            // Alternate Phone
            if (Schedule_Interview_Model.str_Txt_SecondaryPhone != "")
            {
                results = kwm.sendText_clr_backspace_phone(WDriver, KeyWords.locator_ID, KeyWords.ID_Txt_AlternatePhone, Schedule_Interview_Model.str_Txt_SecondaryPhone);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    //  return results;
                }
            }

            // Comment
            if (Schedule_Interview_Model.str_Txt_Sche_Comment != "")
            {
                results = kwm.sendText_clr_backspace(WDriver, KeyWords.locator_ID, KeyWords.ID_Txt_SchInterview_Comment, Schedule_Interview_Model.str_Txt_Sche_Comment);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    //  return results;
                }
            }
            objCommonMethods.Action_Page_Down(WDriver);

            // Schedule Interview button
            results = kwm.select_MSG_Button(WDriver, KeyWords.locator_class, KeyWords.locator_class_button, Schedule_Interview_Model.str_Btn_ScheduleInterview);
            if (results.Result1 == KeyWords.Result_FAIL)
            {
                Thread.Sleep(3000);
                results = kwm.select_MSG_Button(WDriver, KeyWords.locator_type, KeyWords.locator_class_button, Schedule_Interview_Model.str_Btn_ScheduleInterview);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    WDriver.FindElement(By.Id(KeyWords.ID_Btn_RejectInterview)).Click();
                }
            }

            // To maintain error log messages in log files
            objCommonMethods.SaveScreenShot_EachPage(WDriver, Schedule_Interview_Model.strClientName + "_");
            results = kwm.Error_Msg_Read_Submit_Resume_details(WDriver, "//*[@" + KeyWords.locator_ID + "='ulMspUserError']/li");

            //results = kwm.Error_Msg_Read_Submit_Resume_details(WDriver, "//div[@" + KeyWords.locator_ID + "= KeyWords.ID_Error_Valmessages]/div/ul/li");

            if (results.Result1 == KeyWords.Result_PASS)
            {
                if (results.ErrorMessage != "")
                {
                    results.Result1 = KeyWords.Result_FAIL;
                    return(results);
                }
            }


            // Confirmation popup with YES/NO
            results = kwm.select_MSG_Button(WDriver, KeyWords.locator_type, KeyWords.locator_button, Schedule_Interview_Model.str_Btn_Yes_Action_ScheInt);
            if (results.Result1 == KeyWords.Result_FAIL)
            {
                Thread.Sleep(3000);
                results = kwm.select_MSG_Button(WDriver, KeyWords.locator_type, KeyWords.locator_button, Schedule_Interview_Model.str_Btn_Yes_Action_ScheInt);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    return(results);
                }
            }


            // Click on OK button
            results = kwm.select_MSG_Button(WDriver, KeyWords.locator_type, KeyWords.locator_button, Schedule_Interview_Model.str_Btn_OK_ScheInt);
            if (results.Result1 == KeyWords.Result_FAIL)
            {
                Thread.Sleep(13000);
                results = kwm.select_MSG_Button(WDriver, KeyWords.locator_type, KeyWords.locator_button, Schedule_Interview_Model.str_Btn_OK_ScheInt);
                if (results.Result1 == KeyWords.Result_FAIL)
                {
                    Thread.Sleep(15000);
                    results = kwm.select_MSG_Button(WDriver, KeyWords.locator_type, KeyWords.locator_button, Schedule_Interview_Model.str_Btn_OK_ScheInt);
                    if (results.Result1 == KeyWords.Result_FAIL)
                    {
                        return(results);
                    }
                }
            }

            results.Result1       = KeyWords.Result_PASS;
            results.ErrorMessage1 = KeyWords.MSG_str_Schedule_Interview_Done;
            //  results.ErrorMessage = "Invoice Batch created Successfully done  -->  " + strBatchNumberCreated;
            return(results);
        }