import pytest import allure @pytest.mark.usefixtures("app") class TestPerformancePanel: @allure.title("[Search Params Tracks] - Releases - TikTok Likes - Panel behaviour") @allure.description("As user I want to search tracks by releases TikTok parameters") @allure.testcase("https://data-analytics.atlassian.net/browse/DNAD-372") @pytest.mark.regression def test_releases_panel_tiktok_likes(self): self.app.go_to(self.discovery_page.url) self.discovery_page.is_page_loaded() self.discovery_page.switch_scope_to_tracks() self.discovery_page.dsp_tiktok_on(True) # DSP - TIKTOK - ON # Panel behaviour self.discovery_page.expand_releases_block() self.discovery_page.performance_tiktok_likes_min.slide(direction='Right', times=1) self.discovery_page.performance_tiktok_likes_min.has_value('1k') self.discovery_page.collapse_releases_block() self.discovery_page.performance_block_title.has_icon('tiktok') expected_text = 'Likes1k–10M+' self.discovery_page.performance_block_title.contain_text(expected_text) self.discovery_page.dsp_tiktok_on(False) # DSP - TIKTOK - OFF self.discovery_page.performance_block_title.has_no_icon('tiktok') self.discovery_page.performance_block_title.not_contain_text(expected_text) self.discovery_page.dsp_tiktok_on(True) # DSP - TIKTOK - ON self.discovery_page.performance_block_title.has_icon('tiktok') self.discovery_page.performance_block_title.contain_text(expected_text) self.discovery_page.expand_releases_block() self.discovery_page.performance_tiktok_likes_min.slide(direction='Left', times=1) self.discovery_page.collapse_releases_block() self.discovery_page.performance_block_title.has_no_icon('tiktok') self.discovery_page.performance_block_title.not_contain_text(expected_text) @allure.title("[Search Params Tracks] - Releases - YouTube Views - Panel behaviour") @allure.description("As user I want to search tracks by releases YouTube parameters") @allure.testcase("https://data-analytics.atlassian.net/browse/DNAD-753") @pytest.mark.regression def test_releases_panel_youtube_views(self): self.app.go_to(self.discovery_page.url) self.discovery_page.is_page_loaded() self.discovery_page.switch_scope_to_tracks() self.discovery_page.dsp_youtube_on(True) # DSP - YOUTUBE - ON # Panel behaviour self.discovery_page.expand_releases_block() self.discovery_page.performance_youtube_views_min.slide(direction='Right', times=1) self.discovery_page.performance_youtube_views_min.has_value('1k') self.discovery_page.collapse_releases_block() self.discovery_page.performance_block_title.has_icon('youtube') expected_text = 'Views1k–10M+' self.discovery_page.performance_block_title.contain_text(expected_text) self.discovery_page.dsp_youtube_on(False) self.discovery_page.performance_block_title.has_no_icon('youtube') self.discovery_page.performance_block_title.not_contain_text(expected_text) self.discovery_page.dsp_youtube_on(True) self.discovery_page.performance_block_title.has_icon('youtube') self.discovery_page.performance_block_title.contain_text(expected_text) self.discovery_page.expand_releases_block() self.discovery_page.performance_youtube_views_min.slide(direction='Left', times=1) self.discovery_page.collapse_releases_block() self.discovery_page.performance_block_title.has_no_icon('youtube') self.discovery_page.performance_block_title.not_contain_text(expected_text) @allure.title("[Search Params Tracks] - Releases - Spotify Streams - Panel behaviour") @allure.description("As user I want to search tracks by releases Spotify parameters") @allure.testcase("https://data-analytics.atlassian.net/browse/DNAD-970") @pytest.mark.regression def test_releases_panel_spotify_streams(self): self.app.go_to(self.discovery_page.url) self.discovery_page.is_page_loaded() self.discovery_page.switch_scope_to_tracks() self.discovery_page.dsp_spotify_on(True) # DSP - SPOTIFY - ON # Panel behaviour self.discovery_page.expand_releases_block() self.discovery_page.performance_spotify_streams_min.slide(direction='Right', times=2) self.discovery_page.performance_spotify_streams_min.has_value('10k') self.discovery_page.collapse_releases_block() self.discovery_page.performance_block_title.has_icon('spotify') expected_text = 'Streams10k–100M+' self.discovery_page.performance_block_title.contain_text(expected_text) self.discovery_page.dsp_spotify_on(False) self.discovery_page.performance_block_title.has_no_icon('spotify') self.discovery_page.performance_block_title.not_contain_text(expected_text) self.discovery_page.dsp_spotify_on(True) self.discovery_page.performance_block_title.has_icon('spotify') self.discovery_page.performance_block_title.contain_text(expected_text) self.discovery_page.expand_releases_block() self.discovery_page.performance_spotify_streams_min.slide(direction='Left', times=2) self.discovery_page.collapse_releases_block() self.discovery_page.performance_block_title.has_no_icon('spotify') self.discovery_page.performance_block_title.not_contain_text(expected_text) @allure.title("[Search Params Tracks] - Releases - Spotify Playlists - Panel behaviour") @allure.description("As user I want to search tracks by releases Spotify parameters") @allure.testcase("https://data-analytics.atlassian.net/browse/DNAD-755") @pytest.mark.regression def test_releases_panel_spotify_playlists(self): self.app.go_to(self.discovery_page.url) self.discovery_page.is_page_loaded() self.discovery_page.switch_scope_to_tracks() self.discovery_page.dsp_spotify_on(True) # DSP - SPOTIFY - ON # Panel behaviour self.discovery_page.expand_releases_block() self.discovery_page.performance_spotify_playlists_min.slide(direction='Right', times=2) self.discovery_page.performance_spotify_playlists_min.has_value('25') self.discovery_page.collapse_releases_block() self.discovery_page.performance_block_title.has_icon('spotify') expected_text = 'Playlists25–1k+' self.discovery_page.performance_block_title.contain_text(expected_text) self.discovery_page.dsp_spotify_on(False) self.discovery_page.performance_block_title.has_no_icon('spotify') self.discovery_page.performance_block_title.not_contain_text(expected_text) self.discovery_page.dsp_spotify_on(True) self.discovery_page.performance_block_title.has_icon('spotify') self.discovery_page.performance_block_title.contain_text(expected_text) self.discovery_page.expand_releases_block() self.discovery_page.performance_spotify_playlists_min.slide(direction='Left', times=2) self.discovery_page.collapse_releases_block() self.discovery_page.performance_block_title.has_no_icon('spotify') self.discovery_page.performance_block_title.not_contain_text(expected_text) @allure.title("[Search Params Tracks] - Releases - SoundCloud Plays - Panel behaviour") @allure.description("As user I want to search tracks by releases SoundCloud parameters") @allure.testcase("https://data-analytics.atlassian.net/browse/DNAD-754") @pytest.mark.regression def test_releases_panel_soundcloud_plays(self): self.app.go_to(self.discovery_page.url) self.discovery_page.is_page_loaded() self.discovery_page.switch_scope_to_tracks() self.discovery_page.dsp_soundcloud_on(True) # DSP - SOUNDCLOUD - ON # Panel behaviour self.discovery_page.expand_releases_block() self.discovery_page.performance_soundcloud_plays_min.slide(direction='Right', times=1) self.discovery_page.performance_soundcloud_plays_min.has_value('1k') self.discovery_page.collapse_releases_block() self.discovery_page.performance_block_title.has_icon('sndcld') expected_text = 'Plays1k–100M+' self.discovery_page.performance_block_title.contain_text(expected_text) self.discovery_page.dsp_soundcloud_on(False) self.discovery_page.performance_block_title.has_no_icon('sndcld') self.discovery_page.performance_block_title.not_contain_text(expected_text) self.discovery_page.dsp_soundcloud_on(True) self.discovery_page.performance_block_title.has_icon('sndcld') self.discovery_page.performance_block_title.contain_text(expected_text) self.discovery_page.expand_releases_block() self.discovery_page.performance_soundcloud_plays_min.slide(direction='Left', times=1) self.discovery_page.collapse_releases_block() self.discovery_page.performance_block_title.has_no_icon('sndcld') self.discovery_page.performance_block_title.not_contain_text(expected_text)