"""Module with tests for post_asset_status method.""" from unittest.mock import patch import pytest from src import app as index from src.common import lambda_exceptions post_asset_data = { 'filename': 'ff5287e7_ba4f_4b7e_9d2a_f18bae2444d3.jpg', 'status': 'upload_complete', } timestamp = '2020-05-12T22:33:43.644257Z' @patch('owsrequest.request.process') def test_post_asset_status_success(process): """Test for post_asset_status success.""" process.return_value.status_code = 200 process.return_value.json.return_value = {'message': 'ok'} result = index.post_general_asset_status(post_asset_data, timestamp) assert result @patch('owsrequest.request.process') def test_post_asset_request_bad_status_failure(process): """Test for post_asset_status ows-assets 500 failure..""" process.return_value.status_code = 404 with pytest.raises(lambda_exceptions.PostAssetNotFoundError): index.post_general_asset_status(post_asset_data, timestamp) @patch('owsrequest.request.process') def test_post_asset_status_request_exception_failure(process): """Test for post_asset_status ows-assets 500 failure..""" process.return_value.status_code = 400 with pytest.raises(lambda_exceptions.PostAssetError): index.post_general_asset_status(post_asset_data, timestamp)