diff --git a/esgf_playground_utils/models/kafka.py b/esgf_playground_utils/models/kafka.py index 7109d05..4e5051c 100644 --- a/esgf_playground_utils/models/kafka.py +++ b/esgf_playground_utils/models/kafka.py @@ -4,7 +4,7 @@ from datetime import datetime from enum import Enum -from typing import Literal, Union +from typing import Any, Dict, Literal, Union from pydantic import BaseModel from stac_pydantic.item import Item @@ -52,6 +52,16 @@ class RevokePayload(_Payload): item_id: str +class PartialUpdatePayload(_Payload): + """ + Model describing a ``PARTIAL_UPDATE`` payload. This must be sent as a ``PATCH`` request. + """ + + method: Literal["PATCH"] + item: Dict[str, Any] + item_id: str + + class UpdatePayload(_Payload): """ Model describing a ``UPDATE`` payload. This must be sent as a ``PATCH`` or ``PUT`` request. diff --git a/test/functional_test/__init__.py b/test/functional_test/__init__.py index a5448a0..4f004be 100644 --- a/test/functional_test/__init__.py +++ b/test/functional_test/__init__.py @@ -4,14 +4,13 @@ import unittest -from pydantic import ValidationError - from esgf_playground_utils.models.kafka import ( CreatePayload, KafkaEvent, RevokePayload, UpdatePayload, ) +from pydantic import ValidationError class TestKafkaEvent(unittest.TestCase):