code: def test_torch_scheduler_on_epoch_no_monitor_oldstyle(self):
      state = {
          torchbearer.EPOCH: 1,
          torchbearer.OPTIMIZER: "optimizer",
          torchbearer.METRICS: {},
          torchbearer.MODEL: Mock(),
      }
      mock_scheduler = Mock()
      mock_scheduler.return_value = mock_scheduler
  
      torch_scheduler = TorchScheduler(
          mock_scheduler, monitor=None, step_on_batch=False
      )
      torch_scheduler._newstyle = False
  
      torch_scheduler.on_start(state)
      mock_scheduler.assert_called_once_with("optimizer", last_epoch=0)
      mock_scheduler.reset_mock()
  
      torch_scheduler.on_start_training(state)
      mock_scheduler.step.assert_called_once()
      mock_scheduler.reset_mock()
  
      torch_scheduler.on_sample(state)
      mock_scheduler.step.assert_not_called()
      mock_scheduler.reset_mock()
  
      torch_scheduler.on_step_training(state)
      mock_scheduler.step.assert_not_called()
      mock_scheduler.reset_mock()
  
      torch_scheduler.on_end_epoch(state)
      mock_scheduler.step.assert_called_once()
      mock_scheduler.reset_mock()
  
imports: from unittest import TestCase
  from mock import patch, Mock
  import warnings
  import torchbearer
  from torchbearer.bases import _pytorch_version_gt
  from torchbearer.callbacks import TorchScheduler, LambdaLR, StepLR, MultiStepLR, ExponentialLR, CosineAnnealingLR, ReduceLROnPlateau, CyclicLR
label_desc: Use image node_id 10 for calling the TestTorchScheduler obj's underlying member method code with example usage: obj.test_torch_scheduler_on_epoch_no_monitor_oldstyle() without return types