code: def test_terms_metadata_property(
      schema_kwargs: Dict[str, Any],
      server_payload: Dict[str, Any],
      metadata_filter: TermsMetadataFilter,
      metadata_property_to_validate: Dict[str, str],
  ) -> None:
      metadata_property = TermsMetadataProperty(**schema_kwargs)
      assert metadata_property.type == MetadataPropertyTypes.terms
      assert (
          metadata_property.server_settings
          == server_payload["settings"]
      )
      assert metadata_property.to_server_payload() == server_payload
  
      metadata_property._validate_filter(
          metadata_filter=metadata_filter
      )  # ValidationError not raised
  
      (
          metadata_field,
          metadata_validator,
      ) = metadata_property._pydantic_field_with_validator
      MetadataModel = create_model(
          "MetadataModel",
          **metadata_field,
          __validators__=metadata_validator,
      )
      assert MetadataModel(**metadata_property_to_validate)
  
file_path: argilla/tests/unit/client/feedback/schemas/test_metadata.py
imports: from typing import Any, Dict
  import pytest
  from argilla.client.feedback.schemas.enums import MetadataPropertyTypes
  from argilla.client.feedback.schemas.metadata import FloatMetadataFilter, FloatMetadataProperty, IntegerMetadataFilter, IntegerMetadataProperty, TermsMetadataFilter, TermsMetadataProperty
  from tests.pydantic_v1 import ValidationError, create_model
label_desc: Use image node_id 1 for calling a global function with example usage: test_terms_metadata_property(schema_kwargs, server_payload, metadata_filter, metadata_property_to_validate) without return types