code: def test_grid_simple_discrete():
      domain = Domain(
          {"x": {1, 2, 3, 4}, "y": {-3, 2, 5}, "z": {"small", "large"}}
      )
      gs = exhaustive.GridSearch(domain=domain)
      test_utils.evaluate_discrete_3d(gs, batch_size=4, n_steps=3 * 2)
      with pytest.raises(exhaustive.ExhaustedSearchSpaceError):
          gs.run_step(batch_size=4)
      gs.reset()
      assert len(gs.run_step(batch_size=4)) == 4
  
imports: import pytest
  from hypertunity.domain import Domain
  from hypertunity.optimisation import exhaustive
  from .None import _common
label_desc: Use image node_id 1 for calling a global function with example usage: test_grid_simple_discrete() without return types