|
28 | 28 | from tuning.utils.logging import set_log_level |
29 | 29 |
|
30 | 30 |
|
31 | | -@mock.patch.dict(os.environ, {}, clear=True) |
32 | 31 | def test_set_log_level_for_logger_default(): |
33 | 32 | """ |
34 | 33 | Ensure that the correct log level is being set for python native logger and |
35 | 34 | transformers logger when no env var or CLI flag is passed |
36 | 35 | """ |
37 | 36 |
|
38 | | - train_args = copy.deepcopy(TRAIN_ARGS) |
39 | | - training_args, logger = set_log_level(train_args) |
40 | | - assert logger.getEffectiveLevel() == logging.WARNING |
41 | | - assert training_args.log_level == "passive" |
| 37 | + with mock.patch.dict(os.environ, {}, clear=True): |
| 38 | + train_args = copy.deepcopy(TRAIN_ARGS) |
| 39 | + training_args, logger = set_log_level(train_args) |
| 40 | + assert logger.getEffectiveLevel() == logging.WARNING |
| 41 | + assert training_args.log_level == "passive" |
42 | 42 |
|
43 | 43 |
|
44 | | -@mock.patch.dict(os.environ, {"LOG_LEVEL": "info"}, clear=True) |
45 | 44 | def test_set_log_level_for_logger_with_env_var(): |
46 | 45 | """ |
47 | 46 | Ensure that the correct log level is being set for python native logger and |
48 | 47 | transformers logger when env var LOG_LEVEL is used |
49 | 48 | """ |
50 | 49 |
|
51 | | - train_args_env = copy.deepcopy(TRAIN_ARGS) |
52 | | - training_args, logger = set_log_level(train_args_env) |
53 | | - assert logger.getEffectiveLevel() == logging.INFO |
54 | | - assert training_args.log_level == "info" |
| 50 | + with mock.patch.dict(os.environ, {"LOG_LEVEL": "info"}, clear=True): |
| 51 | + train_args_env = copy.deepcopy(TRAIN_ARGS) |
| 52 | + training_args, logger = set_log_level(train_args_env) |
| 53 | + assert logger.getEffectiveLevel() == logging.INFO |
| 54 | + assert training_args.log_level == "info" |
55 | 55 |
|
56 | 56 |
|
57 | | -@mock.patch.dict(os.environ, {"TRANSFORMERS_VERBOSITY": "info"}, clear=True) |
58 | 57 | def test_set_log_level_for_logger_with_set_verbosity_and_cli(): |
59 | 58 | """ |
60 | 59 | Ensure that the correct log level is being set for python native logger and |
61 | 60 | log_level of transformers logger is unchanged when env var TRANSFORMERS_VERBOSITY is used |
62 | 61 | and CLI flag is passed |
63 | 62 | """ |
64 | 63 |
|
65 | | - train_args = copy.deepcopy(TRAIN_ARGS) |
66 | | - train_args.log_level = "error" |
67 | | - training_args, logger = set_log_level(train_args) |
68 | | - assert logger.getEffectiveLevel() == logging.ERROR |
69 | | - assert training_args.log_level == "error" |
| 64 | + with mock.patch.dict(os.environ, {"TRANSFORMERS_VERBOSITY": "info"}, clear=True): |
| 65 | + train_args = copy.deepcopy(TRAIN_ARGS) |
| 66 | + train_args.log_level = "error" |
| 67 | + training_args, logger = set_log_level(train_args) |
| 68 | + assert logger.getEffectiveLevel() == logging.ERROR |
| 69 | + assert training_args.log_level == "error" |
70 | 70 |
|
71 | 71 |
|
72 | | -@mock.patch.dict(os.environ, {"LOG_LEVEL": "info"}, clear=True) |
73 | 72 | def test_set_log_level_for_logger_with_env_var_and_cli(): |
74 | 73 | """ |
75 | 74 | Ensure that the correct log level is being set for python native logger and |
76 | 75 | transformers logger when env var LOG_LEVEL is used and CLI flag is passed. |
77 | 76 | In this case, CLI arg takes precedence over the set env var LOG_LEVEL. |
78 | 77 | """ |
79 | 78 |
|
80 | | - train_args = copy.deepcopy(TRAIN_ARGS) |
81 | | - train_args.log_level = "error" |
82 | | - training_args, logger = set_log_level(train_args) |
83 | | - assert logger.getEffectiveLevel() == logging.ERROR |
84 | | - assert training_args.log_level == "error" |
| 79 | + with mock.patch.dict(os.environ, {"LOG_LEVEL": "info"}, clear=True): |
| 80 | + train_args = copy.deepcopy(TRAIN_ARGS) |
| 81 | + train_args.log_level = "error" |
| 82 | + training_args, logger = set_log_level(train_args) |
| 83 | + assert logger.getEffectiveLevel() == logging.ERROR |
| 84 | + assert training_args.log_level == "error" |
0 commit comments