code: def test_info_and_html(self, module_fn: ModuleFn, shape, dtype):
      x = jnp.ones(shape, dtype)
      f = hk.transform_with_state(lambda: module_fn()(x))
      rng = jax.random.PRNGKey(42)
      params, state = f.init(rng)
      info = jaxpr_info.make_model_info(f.apply)(params, state, rng)
      if descriptors.module_type(module_fn).__name__ != "Sequential":
          self.assertNotEmpty(info.expressions)
      self.assertIsNotNone(jaxpr_info.as_html_page(info))
  
file_path: dm-haiku/haiku/_src/integration/jaxpr_info_test.py
imports: from absl.testing import absltest
  from absl.testing import parameterized
  import haiku
  from haiku._src import test_utils
  from haiku._src.integration import descriptors
  import jax
  import jax.numpy
label_desc: Use image node_id 1 for calling the JaxprInfoTest obj's underlying member method code with example usage: obj.test_info_and_html(module_fn, shape, dtype) without return types