docstr: Test for objax.random.normal.
docstr_tok: ["Test","for","objax.random.normal","."]
code: def test_normal(self):
      """Test for objax.random.normal."""
      objax.random.DEFAULT_GENERATOR.seed(123)
      self.helper_test_normal(shape=(4, 2, 3), stddev=1.0)
      self.helper_test_normal(shape=(2, 3), stddev=2.0)
      self.helper_test_normal(shape=(5,), stddev=2.0)
      self.helper_test_normal(shape=(), stddev=10.0)
      value = np.array(objax.random.normal((1000, 100)))
      self.assertAlmostEqual(value.mean(), 0, delta=0.01)
      self.assertAlmostEqual(value.std(), 1, delta=0.01)
      value = np.array(
          objax.random.normal((1000, 100), mean=0, stddev=2)
      )
      self.assertAlmostEqual(value.mean(), 0, delta=0.02)
      self.assertAlmostEqual(value.std(), 2, delta=0.01)
      value = np.array(
          objax.random.normal((1000, 100), mean=1, stddev=1.5)
      )
      self.assertAlmostEqual(value.mean(), 1, delta=0.015)
      self.assertAlmostEqual(value.std(), 1.5, delta=0.01)
  
file_path: objax/tests/testrandom.py
imports: import unittest
  import numpy
  import scipy.stats
  import objax
label_desc: Use image node_id 4 for calling the TestRandom obj's underlying member method code with example usage: obj.test_normal() without return types