import pytest import allure @pytest.mark.usefixtures("app") class TestReleasesPanel: @allure.title("[Discovery Params Artist] - Releases - TikTok Min.Videos - Panel behaviour") @allure.description("As user I want to search artists by releases TikTok parameters") @allure.testcase("https://data-analytics.atlassian.net/browse/DNAD-300") @pytest.mark.regression def test_releases_panel_tiktok_min_videos(self): self.app.go_to(self.discovery_page.url) self.discovery_page.is_page_loaded() self.discovery_page.check_search_scope_is_artists() self.discovery_page.dsp_tiktok_on(True) # DSP - TIKTOK - ON # Panel behaviour self.discovery_page.expand_releases_block() self.discovery_page.releases_tiktok_min_creations.slide(direction='Right', times=1) self.discovery_page.releases_tiktok_min_creations.has_value('5') self.discovery_page.collapse_releases_block() self.discovery_page.releases_block_title.has_icon('tiktok') expected_text = 'Min. Creations5' self.discovery_page.releases_block_title.contain_text(expected_text) self.discovery_page.dsp_tiktok_on(False) # DSP - TIKTOK - OFF self.discovery_page.releases_block_title.has_no_icon('tiktok') self.discovery_page.releases_block_title.not_contain_text(expected_text) self.discovery_page.dsp_tiktok_on(True) # DSP - TIKTOK - ON self.discovery_page.releases_block_title.has_icon('tiktok') self.discovery_page.releases_block_title.contain_text(expected_text) self.discovery_page.expand_releases_block() self.discovery_page.releases_tiktok_min_creations.slide(direction='Left', times=1) self.discovery_page.collapse_releases_block() self.discovery_page.releases_block_title.has_no_icon('tiktok') self.discovery_page.releases_block_title.not_contain_text(expected_text) @allure.title("[Discovery Params Artist] - Releases - TikTok Video Duration - Panel behaviour") @allure.description("As user I want to search artists by releases TikTok parameters") @allure.testcase("https://data-analytics.atlassian.net/browse/DNAD-297") @pytest.mark.regression def test_releases_panel_tiktok_video_duration(self): self.app.go_to(self.discovery_page.url) self.discovery_page.is_page_loaded() self.discovery_page.check_search_scope_is_artists() self.discovery_page.dsp_tiktok_on(True) # DSP - TIKTOK - ON # Panel behaviour self.discovery_page.expand_releases_block() self.discovery_page.releases_tiktok_creation_duration_min.slide(direction='Right', times=1) self.discovery_page.releases_tiktok_creation_duration_max.slide(direction='Left', times=2) self.discovery_page.releases_tiktok_creation_duration_min.has_value('5s') self.discovery_page.releases_tiktok_creation_duration_max.has_value('40s') self.discovery_page.collapse_releases_block() self.discovery_page.releases_block_title.has_icon('tiktok') expected_text = 'Creation Duration5s–40s' self.discovery_page.releases_block_title.contain_text(expected_text) self.discovery_page.dsp_tiktok_on(False) # DSP - TIKTOK - OFF self.discovery_page.releases_block_title.has_no_icon('tiktok') self.discovery_page.releases_block_title.not_contain_text(expected_text) self.discovery_page.dsp_tiktok_on(True) # DSP - TIKTOK - ON self.discovery_page.releases_block_title.has_icon('tiktok') self.discovery_page.releases_block_title.contain_text(expected_text) self.discovery_page.expand_releases_block() self.discovery_page.releases_tiktok_creation_duration_min.slide(direction='Left', times=1) self.discovery_page.releases_tiktok_creation_duration_max.slide(direction='Right', times=2) self.discovery_page.collapse_releases_block() self.discovery_page.releases_block_title.has_no_icon('tiktok') self.discovery_page.releases_block_title.not_contain_text(expected_text) @allure.title("[Discovery Params Artist] - Releases - YouTube Min.Videos - Panel behaviour") @allure.description("As user I want to search artists by releases YouTube parameters") @allure.testcase("https://data-analytics.atlassian.net/browse/DNAD-717") @pytest.mark.regression def test_releases_panel_youtube(self): self.app.go_to(self.discovery_page.url) self.discovery_page.is_page_loaded() self.discovery_page.check_search_scope_is_artists() self.discovery_page.dsp_youtube_on(True) # DSP - YOUTUBE - ON # Panel behaviour self.discovery_page.expand_releases_block() self.discovery_page.releases_youtube_min_videos.slide(direction='Right', times=2) self.discovery_page.releases_youtube_min_videos.has_value('10') self.discovery_page.collapse_releases_block() self.discovery_page.releases_block_title.has_icon('youtube') self.discovery_page.releases_block_title.contain_text('Min. Videos10') self.discovery_page.dsp_youtube_on(False) # DSP - YOUTUBE - OFF self.discovery_page.releases_block_title.has_no_icon('youtube') self.discovery_page.releases_block_title.not_contain_text('Min. Videos10') self.discovery_page.dsp_youtube_on(True) # DSP - YOUTUBE - ON self.discovery_page.releases_block_title.has_icon('youtube') self.discovery_page.releases_block_title.contain_text('Min. Videos10') self.discovery_page.expand_releases_block() self.discovery_page.releases_youtube_min_videos.slide(direction='Left', times=2) self.discovery_page.collapse_releases_block() self.discovery_page.releases_block_title.has_no_icon('youtube') self.discovery_page.releases_block_title.not_contain_text('Min. Videos10') @allure.title("[Discovery Params Artist] - Releases - Spotify Min.Tracks - Panel behaviour") @allure.description("As user I want to search artists by releases Spotify parameters") @allure.testcase("https://data-analytics.atlassian.net/browse/DNAD-718") @pytest.mark.regression def test_releases_panel_spotify(self): self.app.go_to(self.discovery_page.url) self.discovery_page.is_page_loaded() self.discovery_page.check_search_scope_is_artists() self.discovery_page.dsp_spotify_on(True) # DSP - SPOTIFY - ON # Panel behaviour self.discovery_page.expand_releases_block() self.discovery_page.releases_spotify_min_tracks.slide(direction='Right', times=3) self.discovery_page.releases_spotify_min_tracks.has_value('25') self.discovery_page.collapse_releases_block() self.discovery_page.releases_block_title.has_icon('spotify') self.discovery_page.releases_block_title.contain_text('Min. Tracks25') self.discovery_page.dsp_spotify_on(False) # DSP - SPOTIFY - OFF self.discovery_page.releases_block_title.has_no_icon('spotify') self.discovery_page.releases_block_title.not_contain_text('Min. Tracks25') self.discovery_page.dsp_spotify_on(True) # DSP - SPOTIFY - ON self.discovery_page.releases_block_title.has_icon('spotify') self.discovery_page.releases_block_title.contain_text('Min. Tracks25') self.discovery_page.expand_releases_block() self.discovery_page.releases_spotify_min_tracks.slide(direction='Left', times=3) self.discovery_page.collapse_releases_block() self.discovery_page.releases_block_title.has_no_icon('spotify') self.discovery_page.releases_block_title.not_contain_text('Min. Tracks25') @allure.title("[Discovery Params Artist] - Releases - SoundCloud Min.Tracks - Panel behaviour") @allure.description("As user I want to search artists by releases SoundCloud parameters") @allure.testcase("https://data-analytics.atlassian.net/browse/DNAD-719") @pytest.mark.regression def test_releases_panel_soundcloud(self): self.app.go_to(self.discovery_page.url) self.discovery_page.is_page_loaded() self.discovery_page.check_search_scope_is_artists() self.discovery_page.dsp_soundcloud_on(True) # DSP - SOUNDCLOUD - ON # Panel behaviour self.discovery_page.expand_releases_block() self.discovery_page.releases_soundcloud_min_tracks.slide(direction='Right', times=4) self.discovery_page.releases_soundcloud_min_tracks.has_value('50') self.discovery_page.collapse_releases_block() self.discovery_page.releases_block_title.has_icon('sndcld') self.discovery_page.releases_block_title.contain_text('Min. Tracks50') self.discovery_page.dsp_soundcloud_on(False) # DSP - SOUNDCLOUD - OFF self.discovery_page.releases_block_title.has_no_icon('sndcld') self.discovery_page.releases_block_title.not_contain_text('Min. Tracks50') self.discovery_page.dsp_soundcloud_on(True) # DSP - SOUNDCLOUD - ON self.discovery_page.releases_block_title.has_icon('sndcld') self.discovery_page.releases_block_title.contain_text('Min. Tracks50') self.discovery_page.expand_releases_block() self.discovery_page.releases_soundcloud_min_tracks.slide(direction='Left', times=4) self.discovery_page.collapse_releases_block() self.discovery_page.releases_block_title.has_no_icon('sndcld') self.discovery_page.releases_block_title.not_contain_text('Min. Tracks50')