from unittest import mock import pytest from dapd_public_api_scraper.service.workflowdb import apple_music from tests.entities import AppleMusicWFDBService, AppleMusicWFDBServiceClass @pytest.mark.parametrize( 'service_class', [ apple_music.AppleMusicAlbum, apple_music.AppleMusicArtist, apple_music.AppleMusicPlaylist, apple_music.AppleMusicTrack, ], ) def test_is_removed_ttl_default(service_class: AppleMusicWFDBServiceClass): service: AppleMusicWFDBService = service_class( logger=mock.Mock(), db=mock.Mock(), insert_batch_size=100, is_removed_ttl=None, ) is_removed_default_ttl: str = service.is_removed_ttl_default assert isinstance(is_removed_default_ttl, str) assert is_removed_default_ttl != '' assert all(chart.isalnum or chart == '_' for chart in is_removed_default_ttl)