class_docstr: Test to verify PruningSchedule behavior for step parameters.
  
  This is a parameterized test which runs over all PruningSchedule classes
  to ensure they validate parameters such as begin_step, end_step and frequency
  properly and also apply them correctly during execution.
code: def _construct_pruning_schedule(
      self, schedule_type, begin_step, end_step, frequency=10
  ):
      # Uses default values for sparsity. We're only testing begin_step, end_step
      # and frequency here.
      if schedule_type == "constant_sparsity":
          return pruning_schedule.ConstantSparsity(
              0.5, begin_step, end_step, frequency
          )
      elif schedule_type == "polynomial_decay":
          return pruning_schedule.PolynomialDecay(
              0.2, 0.8, begin_step, end_step, 3, frequency
          )
  
imports: from absl.testing import parameterized
  import tensorflow
  from tensorflow_model_optimization.python.core.keras import compat
  from tensorflow_model_optimization.python.core.quantization.keras import utils
  from tensorflow_model_optimization.python.core.sparsity.keras import pruning_schedule
label_desc: Use image node_id 1 for calling the PruningScheduleTest obj's underlying member method code with example usage: obj._construct_pruning_schedule(schedule_type, begin_step, end_step, frequency) and returns: pruning_schedule, pruning_schedule