code: def _verify_logged(store, run_id, metrics, params, tags):
      run = store.get_run(run_id)
      all_metrics = sum(
          [
              store.get_metric_history(run_id, key)
              for key in run.data.metrics
          ],
          [],
      )
      assert len(all_metrics) == len(metrics)
      logged_metrics = [
          (m.key, m.value, m.timestamp, m.step) for m in all_metrics
      ]
      assert set(logged_metrics) == {
          (m.key, m.value, m.timestamp, m.step) for m in metrics
      }
      logged_tags = set(run.data.tags.items())
      assert {(tag.key, tag.value) for tag in tags} <= logged_tags
      assert len(run.data.params) == len(params)
      assert set(run.data.params.items()) == {
          (param.key, param.value) for param in params
      }
  
file_path: mlflow/tests/store/tracking/__init__.py
imports: import json
  import pytest
  from mlflow.entities import RunTag
  from mlflow.models import Model
  from mlflow.utils.mlflow_tags import MLFLOW_LOGGED_MODELS
label_desc: Use image node_id 4 for calling the AbstractStoreTest obj's underlying member method code with example usage: obj._verify_logged(store, run_id, metrics, params, tags) without return types