"""Test release correction logic.""" from content_utils.exceptions import IneligibleEventError import pytest from src.logic import release_correction def test_update_record_success(request_engine): """Test update_record success.""" mock_update_data = { 'status': 'abc', 'last_updated_by': 111, 'last_updated_type': 'def' } mock_response = {'foo': 'bar'} request_engine['ows-product-workflow'].add_spec( 'PUT', '/correction/123', status=200, response=mock_response ) result = release_correction.update_record(123, mock_update_data) assert result == mock_response def test_update_record_not_found(request_engine): """Test update_record not found error.""" mock_update_data = { 'status': 'abc', 'last_updated_by': 111, 'last_updated_type': 'def' } mock_response = {'foo': 'bar'} request_engine['ows-product-workflow'].add_spec( 'PUT', '/correction/123', status=404, response=mock_response ) with pytest.raises(IneligibleEventError) as e: release_correction.update_record(123, mock_update_data) assert e.value.args[0] == 'Release correction not found.' def test_update_record_error(request_engine): """Test update_record error.""" mock_update_data = { 'status': 'abc', 'last_updated_by': 111, 'last_updated_type': 'def' } mock_response = {'foo': 'bar'} request_engine['ows-product-workflow'].add_spec( 'PUT', '/correction/123', status=500, response=mock_response ) with pytest.raises(Exception) as e: release_correction.update_record(123, mock_update_data) assert e.value.args[0] == 'Failed updating release correction' assert e.value.args[1] == '{"foo": "bar"}'