"""Unit tests for Review Validation History model.""" import pytest from product_review.models import ( review_validation_history as review_validation_history_model, ) from tests.utils.db_utils import create_test_review_validation_history @pytest.mark.parametrize( ( "test_description", "inputs", "filter_review_queue_id", "expected_result", ), [ ( "get validation history by review_queue_id", [ { "review_queue_id": 2, "product_id": 45678, "track_id": 111, }, { "review_queue_id": 2, "product_id": 45678, "track_id": 111, }, { "review_queue_id": 1, "product_id": 99999, "track_id": 5, }, ], 2, { "total_count": 2, "expected_review_queue_id": 2, }, ), ], ) def test_get_history( test_description, inputs, filter_review_queue_id, expected_result, ): """Test get validations history for a specified release.""" for item in inputs: create_test_review_validation_history( review_queue_id=item["review_queue_id"], product_id=item["product_id"], validation_code="potential_audio_infringement", track_id=item["track_id"], details=[], ) history, total_count = review_validation_history_model.get_history( filter_review_queue_id ) assert total_count == expected_result["total_count"] for item in history: assert item.review_queue_id == expected_result["expected_review_queue_id"]