Example #1
0
    def test_download_icon_disabled(self):
        rand = my_random_string(3)
        home_page = HomePage(self.webdriver, self.config)
        home_page.createProject('Test Proj' + rand, 'NA - United States')
        sleep(10)

        project_page = ProjectPage(self.webdriver, self.config)
        audience_page = AudiencePage(self.webdriver, self.config)
        project_page.add_audience_button().click()
        sleep(5)
        audience_page.audience_name_textbox().send_keys('Test Audience')
        audience_page.add_dataSource('Purchase Behavior')
        self.webdriver.find_element_by_xpath("//select[contains(@ng-model,'criteriaColumnSelector')]").click()
        self.webdriver.find_element_by_xpath("//option[text()='Category']").click()
        self.webdriver.find_element_by_xpath("//input[@placeholder='Begin typing to search...']").click()
        self.webdriver.find_element_by_xpath("//li[contains(text(),'AIR FRESHENERS')]").click()
        criteria_createButton = self.webdriver.find_element_by_xpath(
            "//button[contains(@ng-click,'$ctrl.criteriaApply()') and (@class='red-btn')]")
        self.webdriver.execute_script("arguments[0].click();", criteria_createButton)
        # audience_page.criteria_createButton().click()
        sleep(5)
        audience_page.save_and_create_button().click()
        sleep(10)
        project_page.AudienceName('Test Audience').click()
        download_icon = project_page.audience_download_icon('Test Audience')
        if download_icon.is_enabled():
            print("Download Icon is disabled")
        else:
            print("Download Icon is not disabled")

        project_page.project_menu_icon('Test Proj' + rand).click()
        project_page.project_delete_icon('Test Proj' + rand).click()
        project_page.AlertOkButton().click()
Example #2
0
    def test_download_single_existing_audience(self):
        section = self.__class__.__name__
        project_name = self.configAB["DownloadAudience"]["project_name"]
        audience_name = self.configAB["DownloadAudience"]["audience_name"]
        # Delete existing file in workspace
        path = self.workspace + "\\" + project_name + " - " + audience_name + ".xlsx"
        print(path)
        print(glob.glob(path))
        for file in glob.glob(path):
            os.remove(file)

        home_page = HomePage(self.webdriver, self.config)
        home_page.searchProjects(project_name)

        # Download Audience
        project_page = ProjectPage(self.webdriver, self.config)
        project_page.audience_menu_icon(audience_name).click()
        project_page.audience_download_icon(audience_name).click()
        project_page.audience_data(audience_name).click()

        sleep(30)
        path1 = self.workspace + "\\" + project_name + " - " + audience_name + ".xlsx"
        check = os.path.exists(path1)

        self.assertEqual(check, True, "Audience download failed")

        for file in glob.glob(path1):
            excel_sheet = xlrd.open_workbook(file)
            sheet1 = excel_sheet.sheet_by_index(0)

            row = sheet1.row_slice(0)
            excel_header = row[0].value
            sheet = excel_sheet.sheet_by_index(0)
            Cols = ""
            for i in range(sheet1.ncols):
                Cols = Cols + str(sheet.cell_value(1, i))

            print(excel_header)
            row_count = sheet.nrows
            print(Cols)

            self.assertEqual(excel_header,
                             "Location Data for \"DNT_Auto_Aud02\"",
                             "Column header not matching")
    def test_download_icon_disabled(self):
        section = self.__class__.__name__
        project_name = self.configAB[section]["project_name"]
        audience_name = self.configAB[section]["audience_name"]

        home_page = HomePage(self.webdriver, self.config)
        project_page = ProjectPage(self.webdriver, self.config)

        home_page.searchProjects(project_name)
        project_page.AudienceName(audience_name).click()
        # project_page.audience_menu_icon(audience_name).click()
        download_icon = project_page.audience_download_icon(audience_name)
        if download_icon.is_enabled():
            print("Download Icon is disabled")
        else:
            print("Download Icon is not disabled")
    def test_download_audiences(self):
        project_name = self.configAB["Aqfer"]["project_name"]
        path = os.path.join('testdata', 'sidebar.json')
        print("location:" + path)

        project_page = ProjectPage(self.webdriver, self.config)
        audience_page = AudiencePage(self.webdriver, self.config)
        home_page = HomePage(self.webdriver, self.config)

        with open(path) as file:
            data = json.load(file)
        for item in range(len(data)):
            link = data[item]["link"]
            # Project selection
            new_project_name = project_name + '_' + link + '_QA'
            print(new_project_name)
            sleep(5)
            home_page.searchProjects(new_project_name)
            sleep(10)
            num_aud_panel = len(
                self.webdriver.find_elements_by_xpath(
                    "//div[@class = 'audiences-section']//audience-panel"))
            print(num_aud_panel)
            for i in range(1, num_aud_panel + 1):
                audience_name = self.webdriver.find_element_by_xpath(
                    "(//div[@class = 'audience-title ng-binding'])[position()="
                    + str(i) + "]").click()
                # download_link    = self.webdriver.find_element_by_xpath("(//div[@class = 'audiences-section']//div[contains(@class,'download-button')])[position()= "+str(i)+"]")
                # download_link.click()
                # audience_menu_icon = self.webdriver.find_element_by_xpath("//div[text()='" + audience_name + "']//following::div[1]")
                self.webdriver.execute_script(
                    "arguments[0].click();",
                    project_page.audience_menu_icon(audience_name))
                self.webdriver.execute_script(
                    "arguments[0].click();",
                    project_page.audience_download_icon(audience_name))
                self.webdriver.execute_script(
                    "arguments[0].click();",
                    project_page.audience_data(audience_name))