code: def test_hinnodemapper_level_1():
      batch_size = 2
      feature_sizes = {"t1": 1, "t2": 2}
      G, nodes_type_1, nodes_type_2 = example_hin_2(feature_sizes)
  
      mapper = HinSAGENodeGenerator(
          G, batch_size=batch_size, num_samples=[2], head_node_type="t2"
      ).flow(nodes_type_2)
  
      schema = G.create_graph_schema()
      sampling_adj = schema.type_adjacency_list(["t2"], 1)
  
      assert len(mapper) == 1
  
      # Get a batch!
      batch_feats, batch_targets = mapper[0]
  
      # Check shapes are (batch_size, nsamples, feature_size)
      assert np.shape(batch_feats[0]) == (2, 1, 2)
      assert np.shape(batch_feats[1]) == (2, 2, 1)
  
      # Check the types
      assert np.all(batch_feats[0] >= 4)
      assert np.all(batch_feats[1] < 4)
  
imports: from stellargraph.core.graph import *
  from stellargraph.mapper import *
  import networkx
  import numpy
  import random
  import pytest
  import pandas
  import scipy.sparse
  from ..test_utils.graphs import example_graph, example_graph_random, example_hin_1, create_graph_features, repeated_features, weighted_tree
  from ..None import test_utils
label_desc: Use image node_id 18 for calling a global function with example usage: test_hinnodemapper_level_1() without return types