2022-03-01 15:49:44 +08:00
|
|
|
# Copyright (c) OpenMMLab. All rights reserved.
|
|
|
|
from unittest.mock import Mock
|
|
|
|
|
|
|
|
from mmengine.hooks import ParamSchedulerHook
|
|
|
|
|
|
|
|
|
|
|
|
class TestParamSchedulerHook:
|
|
|
|
|
|
|
|
def test_after_iter(self):
|
|
|
|
Hook = ParamSchedulerHook()
|
|
|
|
Runner = Mock()
|
|
|
|
scheduler = Mock()
|
|
|
|
scheduler.step = Mock()
|
|
|
|
scheduler.by_epoch = False
|
|
|
|
Runner.schedulers = [scheduler]
|
2022-03-07 14:00:05 +08:00
|
|
|
Hook.after_train_iter(Runner)
|
2022-03-01 15:49:44 +08:00
|
|
|
scheduler.step.assert_called()
|
|
|
|
|
|
|
|
def test_after_epoch(self):
|
|
|
|
Hook = ParamSchedulerHook()
|
|
|
|
Runner = Mock()
|
|
|
|
scheduler = Mock()
|
|
|
|
scheduler.step = Mock()
|
|
|
|
scheduler.by_epoch = True
|
|
|
|
Runner.schedulers = [scheduler]
|
2022-03-07 14:00:05 +08:00
|
|
|
Hook.after_train_epoch(Runner)
|
2022-03-01 15:49:44 +08:00
|
|
|
scheduler.step.assert_called()
|