import pytest from dmp.songwhip.models import SongwhipPresavePageDbt from dmp.songwhip.repositories import SongwhipPresavePageRepository from tests.unit.types import CreateReportingModel class TestSongwhipPresavePageRepository: @pytest.mark.db def test_get_by_vendor_id_subaccount_id_global_participant_id( self, repository: SongwhipPresavePageRepository, create_reporting_model: CreateReportingModel, ) -> None: songwhip_presave_page = create_reporting_model(SongwhipPresavePageDbt) result = repository.get_presave_pages( vendor_ids=[songwhip_presave_page.vendor_id], subaccount_ids=[songwhip_presave_page.subaccount_id], global_participant_ids=[songwhip_presave_page.global_participant_id], presave_page_ids=None, ) assert len(result) == 1 result_page = result[0] assert result_page.id == songwhip_presave_page.id @pytest.mark.db def test_get_by_vendor_id_subaccount_id_global_participant_id_for_vendor( self, repository: SongwhipPresavePageRepository, create_reporting_model: CreateReportingModel, ) -> None: vendor_id = 1000 subaccount_id = 2000 songwhip_presave_page = create_reporting_model( SongwhipPresavePageDbt, vendor_id=vendor_id, subaccount_id=subaccount_id, ) result = repository.get_presave_pages( vendor_ids=[songwhip_presave_page.vendor_id], subaccount_ids=[songwhip_presave_page.subaccount_id], global_participant_ids=[songwhip_presave_page.global_participant_id], presave_page_ids=None, ) assert len(result) == 1 result_page = result[0] assert result_page.id == songwhip_presave_page.id