56 lines
1.6 KiB
Python
56 lines
1.6 KiB
Python
# Copyright (c) OpenMMLab. All rights reserved.
|
|
import os
|
|
import os.path as osp
|
|
import tempfile
|
|
|
|
import mmcv.utils.logging
|
|
|
|
from mmcls.utils import get_root_logger, load_json_log
|
|
|
|
|
|
def test_get_root_logger():
|
|
# Reset the initialized log
|
|
mmcv.utils.logging.logger_initialized = {}
|
|
with tempfile.TemporaryDirectory() as tmpdirname:
|
|
log_path = osp.join(tmpdirname, 'test.log')
|
|
|
|
logger = get_root_logger(log_file=log_path)
|
|
message1 = 'adhsuadghj'
|
|
logger.info(message1)
|
|
|
|
logger2 = get_root_logger()
|
|
message2 = 'm,tkrgmkr'
|
|
logger2.info(message2)
|
|
|
|
with open(log_path, 'r') as f:
|
|
lines = f.readlines()
|
|
assert message1 in lines[0]
|
|
assert message2 in lines[1]
|
|
|
|
assert logger is logger2
|
|
|
|
handlers = list(logger.handlers)
|
|
for handler in handlers:
|
|
handler.close()
|
|
logger.removeHandler(handler)
|
|
os.remove(log_path)
|
|
|
|
|
|
def test_load_json_log():
|
|
log_path = 'tests/data/test.logjson'
|
|
log_dict = load_json_log(log_path)
|
|
|
|
# test log_dict
|
|
assert set(log_dict.keys()) == set([1, 2, 3])
|
|
|
|
# test epoch dict in log_dict
|
|
assert set(log_dict[1].keys()) == set(
|
|
['iter', 'lr', 'memory', 'data_time', 'time', 'mode'])
|
|
assert isinstance(log_dict[1]['lr'], list)
|
|
assert len(log_dict[1]['iter']) == 4
|
|
assert len(log_dict[1]['lr']) == 4
|
|
assert len(log_dict[2]['iter']) == 3
|
|
assert len(log_dict[2]['lr']) == 3
|
|
assert log_dict[3]['iter'] == [10, 20]
|
|
assert log_dict[3]['lr'] == [0.33305, 0.34759]
|