code: def test_retrieve_pmlb(cache_dir, dataset_limit):
      # Do it twice to trigger cache
      for _ in range(2):
          count = 0
          for supervised in islice(
              retrieve_pmlb(cache_dir), dataset_limit
          ):
              X, y, meta = supervised.X, supervised.y, supervised.meta
              assert meta["name"] != ""
              assert meta["problem"] in [
                  "binary",
                  "multiclass",
                  "regression",
              ]
              assert len(meta["feature_names"]) > 0
              assert len(meta["categorical_mask"]) > 0
              assert meta["source"] == "pmlb"
              assert isinstance(X, pd.DataFrame)
              assert isinstance(y, pd.Series)
              count += 1
          assert count > 0
  
file_path: interpret/python/powerlift/tests/powerlift/bench/test_store.py
imports: from powerlift.bench.store import Store, retrieve_openml, retrieve_pmlb, populate_with_datasets
  import pandas
  from powerlift import db
  import pytest
  from itertools import islice
label_desc: Use image node_id 2 for calling a global function with example usage: test_retrieve_pmlb(cache_dir, dataset_limit) without return types