"""Tests for Persister.""" from unittest.mock import MagicMock import sentry_sdk from sqlalchemy.orm.session import Session from ows_product_physical.models import persister def test_persister_get_subaccount_product_by_product_code( db_with_data, valid_release_data_by_subaccount): """Assert the get release id was called properly. Success case.""" product_code = 'PHYS1' resp = persister.get_release_by_product_code(product_code) assert resp.status == 200 assert resp.message == valid_release_data_by_subaccount def test_persister_get_subaccount_product_by_product_code_fail(monkeypatch): """Assert the get release id by product code. Failed.""" product_code = 'PHYS1' monkeypatch.delattr( Session, 'query', raising=True) monkeypatch.setattr( sentry_sdk, 'capture_exception', value=MagicMock()) resp = persister.get_release_by_product_code(product_code) assert resp.status == 500 assert sentry_sdk.capture_exception.called