code: def test_save_dataset_subset_and_load_from_file(tmp_path):
      data = np.random.rand(100, 2)
      params = {"max_bin": 50, "min_data_in_bin": 10}
      ds = lgb.Dataset(data, params=params)
      ds.subset([1, 2, 3, 5, 8]).save_binary(tmp_path / "subset.bin")
      lgb.Dataset(tmp_path / "subset.bin", params=params).construct()
  
imports: import filecmp
  import numbers
  import re
  from copy import deepcopy
  from os import getenv
  from pathlib import Path
  import numpy
  import pytest
  from scipy import sparse
  from sklearn.datasets import dump_svmlight_file, load_svmlight_file
  from sklearn.model_selection import train_test_split
  import lightgbm
  from lightgbm.compat import PANDAS_INSTALLED, pd_DataFrame, pd_Series
  from .utils import dummy_obj, load_breast_cancer, mse_obj, np_assert_array_equal
label_desc: Use image node_id 7 for calling a global function with example usage: test_save_dataset_subset_and_load_from_file(tmp_path) without return types