code: def test_groupnorm_0d(self):
      x = objax.random.normal((64, 8))
      gn = objax.nn.GroupNorm0D(8, groups=2, eps=1e-8)
      y = gn(x, training=True)
      self.assertEqual(y.shape, x.shape)
      x = jn.array(
          [
              [1.0, 1.0, 1.0, 1.0, -1.0, -2.0, -3.0, -4.0],
              [5.0, 5.0, 5.0, 5.0, -1.0, -1.0, -2.0, -2.0],
          ]
      )
      y = gn(x)
      np.testing.assert_allclose(
          np.array(
              [
                  [
                      0.0,
                      0.0,
                      0.0,
                      0.0,
                      1.34164079,
                      0.4472136,
                      -0.4472136,
                      -1.34164079,
                  ],
                  [0.0, 0.0, 0.0, 0.0, 1.0, 1.0, -1.0, -1.0],
              ]
          ),
          y,
          atol=1e-5,
      )
  
imports: import os
  import unittest
  import jax.numpy
  import numpy
  import objax
label_desc: Use image node_id 1 for calling the TestGroupnorm obj's underlying member method code with example usage: obj.test_groupnorm_0d() without return types