import unittest import allure import pytest from ui_automation_framework.core import TestStatus from ui_automation_framework.utils import AppConfig from app.api_client import ApiClient from app.src.pages.album_page import AlbumPage from app.src.pages.comparison_page import TrackComparisonPage 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): @pytest.fixture(autouse=True) def classSetup(self): self.loginPage = LoginPage(self.driver) self.tp = TrackPage(self.driver) self.cp = TrackComparisonPage(self.driver) self.ap = AlbumPage(self.driver) self.api_client = ApiClient() self.ts = TestStatus(self.driver) @allure.issue("https://data-analytics.atlassian.net/browse/AP-8058") @pytest.mark.flaky(reruns=0) @allure.story("AP-5104") @allure.severity(allure.severity_level.NORMAL) @allure.title("[AP-4912] Track Details -> 'Videos' tab. Export option STEPS 2-11") @allure.description("TC verifies that the user can export the data shown on YT ‘Video’ tab on the Track Page. STEPS 2-11") def test_youtube_td_video_export_verification_steps_2_11(self): self.loginPage.login_with_worker() self.tp.open_spotify_track_page_with_market_id(track_id=AppConfig.get("track40")["id"], market_id=AppConfig.get("market")["global"]["url"]) self.tp.td_switch_to_youtube_tab() # step 2-3 self.tp.td_verify_export_hover() # step 4-7, 9 self.tp.td_video_verify_export() # step 10 self.tp.select_market(AppConfig.get("market")["australia"]["name"]) self.tp.td_switch_to_youtube_tab() self.tp.td_video_verify_export(market=AppConfig.get("market")["australia"]["market"].upper(), param=" (1)") # step 11 self.tp.select_previous_mounth_period() self.tp.td_video_verify_export(market=AppConfig.get("market")["australia"]["market"].upper(), param=" (2)") @allure.story("AP-5104") @allure.severity(allure.severity_level.NORMAL) @allure.title("[AP-4912] Track Details -> 'Videos' tab. Export option STEPS 12-13") @allure.description("TC verifies that the user can export the data shown on YT ‘Video’ tab on the Track Page. STEPS 12-13") def test_youtube_td_video_export_verification_steps_12_13(self): self.loginPage.login_with_worker() self.tp.open_spotify_track_page_with_market_id(track_id=AppConfig.get("track40")["id"], market_id=AppConfig.get("market")["global"]["url"]) self.tp.select_market(AppConfig.get("market")["australia"]["name"]) self.tp.td_switch_to_youtube_tab() self.tp.select_previous_mounth_period() # step 12 self.tp.market_dd_choose_few_countries(tab="youtube", param=[AppConfig.get("market")["us"]["name"], AppConfig.get("market")["australia"]["name"]]) self.tp.youtube_change_sources(["Playlists", "Suggested Videos"]) markets_export = [AppConfig.get("market")["australia"]["market"].upper(), AppConfig.get("market")["us"]["market"].upper()] markets_export = ", ".join(markets_export) self.tp.td_video_verify_export(market=markets_export) # step 13 self.tp.stream_and_source_choose_region(self.tp.REGION_EUROPE, "td_youtube") self.tp.td_video_verify_export(market=self.tp.REGION_EUROPE, param=" (1)") # NOT AUTOMATED STEPS 1, 8, 14