code: def assert_invalid_step_values(
      self, step, initial_value, final_value, epochs
  ):
      x_train, x_test, y_train, y_test = simple_classification()
      optimizer = algorithms.Momentum(
          [
              layers.Input(10),
              layers.Sigmoid(5),
              layers.Sigmoid(1),
          ],
          step=step,
          momentum=0.99,
          batch_size=None,
          verbose=False,
          nesterov=True,
      )
  
      step = self.eval(optimizer.step)
      self.assertAlmostEqual(step, initial_value)
  
      optimizer.train(x_train, y_train, x_test, y_test, epochs=epochs)
  
      step = self.eval(optimizer.step)
      self.assertAlmostEqual(step, final_value)
  
file_path: neupy/tests/algorithms/test_step_updates.py
imports: from neupy import algorithms, layers
  from base import BaseTestCase
  from helpers import simple_classification
label_desc: Use image node_id 1 for calling the StepUpdateTestCase obj's underlying member method code with example usage: obj.assert_invalid_step_values(step, initial_value, final_value, epochs) without return types