code: def test_signature_and_examples_are_saved_correctly(
      example, signature, expected_signature, basic_model, model_path
  ):
      mlflow.sentence_transformers.save_model(
          basic_model,
          path=model_path,
          signature=signature,
          input_example=example,
      )
      mlflow_model = Model.load(model_path)
  
      assert mlflow_model.signature == expected_signature
  
      if example is None:
          assert mlflow_model.saved_input_example_info is None
      else:
          if isinstance(example, pd.DataFrame):
              pd.testing.assert_frame_equal(
                  _read_example(mlflow_model, model_path), example
              )
          else:
              np.testing.assert_equal(
                  _read_example(mlflow_model, model_path), example
              )
  
imports: import json
  import os
  from unittest import mock
  import numpy
  import pandas
  import pytest
  import yaml
  from pyspark.sql import SparkSession
  from pyspark.sql.types import ArrayType, DoubleType
  from sentence_transformers import SentenceTransformer
  import mlflow
  import mlflow.pyfunc.scoring_server
  import mlflow.sentence_transformers
  from mlflow import pyfunc
  from mlflow.exceptions import MlflowException
  from mlflow.models import Model, infer_signature
  from mlflow.models.utils import _read_example
  from mlflow.store.artifact.s3_artifact_repo import S3ArtifactRepository
  from mlflow.utils.environment import _mlflow_conda_env
  from tests.helper_functions import _assert_pip_requirements, _compare_logged_code_paths, _mlflow_major_version_string, assert_register_model_called_with_local_model_path, pyfunc_serve_and_score_model
label_desc: Use image node_id 21 for calling a global function with example usage: test_signature_and_examples_are_saved_correctly(example, signature, expected_signature, basic_model, model_path) without return types