"""Unit tests for metadata-consistency-checks logic.""" import pytest from src.common.models.metadata import TrackArtistTable from src.common.models.metadata import TrackWriterTable from src.logic.consistency_fetch import fetch_track_participations_events class TestFetchTrackParticipationsEvents: """Tests for fetch_track_participations_events.""" @pytest.fixture def fetch_ar_records_to_sync(self, mocker): """Fixture for .fetch_ar_records_to_sync.""" return mocker.patch( 'src.logic.consistency_fetch.fetch_ar_records_to_sync' ) @pytest.fixture def encode_records(self, mocker): """Mock encode_records function mock.""" return mocker.patch('src.logic.consistency_fetch.encode_records') def test_fetch_track_participations_events( self, mocker, inconsistency_reports, fetch_ar_records_to_sync, encode_records, inconsistent_track_artist_id, inconsistent_track_writer_id ): """Test fetch_track_participations_events.""" result = fetch_track_participations_events(inconsistency_reports) assert fetch_ar_records_to_sync.call_args_list == [ mocker.call(TrackArtistTable, [inconsistent_track_artist_id]), mocker.call(TrackWriterTable, [inconsistent_track_writer_id]) ] assert result == encode_records.return_value