code: def test_read_hdf5_execution(setup):
      test_array = np.random.RandomState(0).rand(20, 10)
      group_name = "test_group"
      dataset_name = "test_dataset"
  
      with pytest.raises(TypeError):
          fromhdf5(object())
  
      with tempfile.TemporaryDirectory() as d:
          filename = os.path.join(
              d, f"test_read_{int(time.time())}.hdf5"
          )
          with h5py.File(filename, "w") as f:
              g = f.create_group(group_name)
              g.create_dataset(
                  dataset_name, chunks=(7, 4), data=test_array
              )
  
          # test filename
          r = fromhdf5(filename, group=group_name, dataset=dataset_name)
  
          result = r.execute().fetch()
          np.testing.assert_array_equal(result, test_array)
          assert r.extra_params["raw_chunk_size"] == (7, 4)
  
          with pytest.raises(ValueError):
              fromhdf5(filename)
  
          with pytest.raises(ValueError):
              fromhdf5(filename, dataset="non_exist")
  
          with h5py.File(filename, "r") as f:
              # test file
              r = fromhdf5(f, group=group_name, dataset=dataset_name)
  
              result = r.execute().fetch()
              np.testing.assert_array_equal(result, test_array)
  
              with pytest.raises(ValueError):
                  fromhdf5(f)
  
              with pytest.raises(ValueError):
                  fromhdf5(f, dataset="non_exist")
  
              # test dataset
              ds = f[f"{group_name}/{dataset_name}"]
              r = fromhdf5(ds)
  
              result = r.execute().fetch()
              np.testing.assert_array_equal(result, test_array)
  
imports: import tempfile
  import shutil
  import os
  import time
  import numpy
  import pandas
  import pytest
  from ....None import tensor
  from ....None import dataframe
  from ....lib.sparse import SparseNDArray
  from ....tests.core import require_cupy
  from ....utils import lazy_import
  from ...lib import nd_grid
  from ..None import tensor, ones_like, zeros, zeros_like, full, full_like, arange, empty, empty_like, diag, diagflat, eye, linspace, meshgrid, indices, triu, tril, from_dataframe, fromtiledb, fromhdf5, fromzarr
label_desc: Use image node_id 18 for calling a global function with example usage: test_read_hdf5_execution(setup) without return types