"""Tests for release_correction.""" import pytest from src.constants import service from src.logic.release_correction import get_release_correction from src.logic.release_correction import get_track_revisions def test_get_release_correction_success(request_engine): """Test get_release_correction success.""" request_engine[service.OWS_PRODUCT_WORKFLOW].add_spec( 'GET', '/correction', status=200, response={'foo': 'bar'} ) result = get_release_correction(1) assert result == {'foo': 'bar'} def test_get_release_correction_error(request_engine): """Test get_release_correction error.""" request_engine[service.OWS_PRODUCT_WORKFLOW].add_spec( 'GET', '/correction', status=400, response={'code': 'some_code', 'message': 'some_error_msg'} ) expected_error = ( 'Failed get release correction for id 1\n' 'code: some_code\n' 'message: some_error_msg' ) with pytest.raises(Exception) as excinfo: get_release_correction(1) assert excinfo.value.args[0] == expected_error def test_get_track_revisions(request_engine): """Test get track revisions.""" request_engine[service.OWS_PRODUCT_WORKFLOW].add_spec( 'GET', '/correction', status=200, response={'items': [ {'table_name': 'release', 'field_name': 'foo'}, {'table_name': 'track', 'field_name': 'lyrics'}, {'table_name': 'track', 'field_name': 'bar'} ]} ) result = get_track_revisions(1) assert result == [{'table_name': 'track', 'field_name': 'bar'}]