import logging import time import unittest import allure import pytest from parameterized import parameterized from ui_automation_framework.core import TestStatus from ui_automation_framework.utils import AppConfig from ui_automation_framework.utils import logger as cl from app.api_client import ApiClient from app.src.pages.login_page import LoginPage from app.src.pages.track_page import TrackPage @pytest.mark.usefixtures("set_up", "one_time_set_up") class DeepLinkingTrackPageTest(unittest.TestCase): log = cl.Logger(logging.DEBUG) @pytest.fixture(autouse=True) def classSetup(self): self.loginPage = LoginPage(self.driver) self.tp = TrackPage(self.driver) self.api_client = ApiClient() self.ts = TestStatus(self.driver) @parameterized.expand(["Top Markets", "Sony Offices", "All Markets"]) @allure.story("AP-5152") @allure.severity(allure.severity_level.NORMAL) @allure.title("[4913][AP-5170][YT > New Video Page > Views by Market tab] Export verification. STEPS 1-10") @allure.description("TC verifies Export on Video Page > Views by Market teb. STEPS 1-10") def test_youtube_nvp_vbm_export_verification_steps_1_10(self, predefined_list): self.loginPage.login_with_worker() track = AppConfig.get("track40") self.tp.open_youtube_video_page(track["isrc"], market=AppConfig.get("market")["global"]["url"]) self.tp.youtube_switch_to_views_by_market_tab() if predefined_list == self.tp.all_markets: self.tp.market_dd_choose_few_countries([self.tp.all_markets], "youtube_vbm") else: self.tp.stream_and_source_choose_region(predefined_list, "youtube_vbm") # step 1-4, 9-10 time.sleep(3) self.tp.youtube_views_by_markets_verify_export(track["isrc"]) # step 5-8 self.tp.youtube_change_sources(param=["Browse Features"], dd="vbm") self.tp.youtube_views_by_markets_verify_export(track["isrc"], " (1)") @allure.story("AP-5152") @allure.severity(allure.severity_level.NORMAL) @allure.title("[4913][AP-5170][YT > New Video Page > Views by Market tab] Export verification. STEPS 11-13") @allure.description("TC verifies Export on Video Page > Views by Market teb. STEPS 11-13") def test_youtube_nvp_vbm_export_verification_steps_11_13(self): self.loginPage.login_with_worker() track = AppConfig.get("track40") self.tp.open_youtube_video_page(track["isrc"], market=AppConfig.get("market")["global"]["url"]) self.tp.youtube_switch_to_views_by_market_tab() # step 11 self.tp.select_previous_mounth_period() self.tp.youtube_views_by_markets_verify_export(track["isrc"]) # step 12 two_markets = [AppConfig.get("market")["canada"]["name"], AppConfig.get("market")["us"]["name"]] self.tp.stream_and_source_deselect_countries(two_markets, "youtube_nvp") self.tp.youtube_views_by_markets_verify_export(track["isrc"], " (1)") # step 13 markets_ui = self.tp.youtube_nvp_views_by_markets_get_markets() self.tp.vdm_choose_graph_view_bar_chart() self.tp.youtube_views_by_markets_verify_export(track["isrc"], " (2)", markets_ui) @allure.story("AP-5152") @allure.severity(allure.severity_level.NORMAL) @allure.title("[4913][AP-5170][YT > New Video Page > Views by Market tab] Export verification. STEPS 14") @allure.description("TC verifies Export on Video Page > Views by Market teb. STEPS 14") def test_youtube_nvp_vbm_export_verification_steps_14(self): self.loginPage.login_with_worker() track = AppConfig.get("track40") self.tp.open_youtube_video_page(track["isrc"], market=AppConfig.get("market")["global"]["url"]) self.tp.youtube_switch_to_views_by_market_tab() line_graph_url = self.tp.get_url() # step 14 self.tp.nvp_youtube_check_videos(2) markets_ui = self.tp.youtube_nvp_views_by_markets_get_markets() self.tp.vdm_choose_graph_view_bar_chart() self.tp.youtube_views_by_markets_verify_export(track["isrc"], "", markets_ui) self.tp.open_url(line_graph_url) self.tp.nvp_youtube_check_videos(1) markets_ui = self.tp.youtube_nvp_views_by_markets_get_markets() self.tp.vdm_choose_graph_view_bar_chart() self.tp.youtube_views_by_markets_verify_export(track["isrc"], " (1)", markets_ui) # NOT AUTOMATED - STEP 1(design)