Renames Old Log File if It Exists

This commit is contained in:
2023-04-28 03:55:07 -03:00
parent 5666eb8c28
commit 56994dba27
3 changed files with 23 additions and 6 deletions

View File

@@ -50,10 +50,6 @@ def main():
with open(pickle_path) as pickle_file: with open(pickle_path) as pickle_file:
save = pickle.load(pickle_file) save = pickle.load(pickle_file)
output_path = Path(args.outfile)
if output_path.exists():
output_path.rename(str(output_path) + ".backup")
except Exception as err: except Exception as err:
sys.exit(err) sys.exit(err)

View File

@@ -1,3 +1,4 @@
from pathlib import Path
import logging import logging
@@ -24,7 +25,9 @@ class Logger:
self._logger = logging.getLogger(logger_name) self._logger = logging.getLogger(logger_name)
def set_logger(self, outfile='run.log', level=logging.INFO): def set_logger(self, outfile='run.log', level=logging.INFO):
self.outfile = outfile self.outfile = Path(outfile)
if self.outfile.exists():
self.outfile.rename(str(self.outfile) + ".backup")
if level is not None: if level is not None:
self._logger.setLevel(level) self._logger.setLevel(level)

View File

@@ -36,10 +36,28 @@ class TestLogger(unittest.TestCase):
self.assertIsInstance(logger, Logger) self.assertIsInstance(logger, Logger)
@mock.patch('builtins.open', mock.mock_open()) @mock.patch('builtins.open', mock.mock_open())
def test_set_logger(self): @mock.patch('diceplayer.shared.utils.logger.Path.exists')
@mock.patch('diceplayer.shared.utils.logger.Path.rename')
def test_set_logger_if_file_exists(self, mock_rename, mock_exists):
logger = Logger('test') logger = Logger('test')
mock_exists.return_value = True
logger.set_logger() logger.set_logger()
self.assertTrue(mock_rename.called)
self.assertIsNotNone(logger._logger)
self.assertEqual(logger._logger.name, 'test')
@mock.patch('builtins.open', mock.mock_open())
@mock.patch('diceplayer.shared.utils.logger.Path.exists')
@mock.patch('diceplayer.shared.utils.logger.Path.rename')
def test_set_logger_if_file_not_exists(self, mock_rename, mock_exists):
logger = Logger('test')
mock_exists.return_value = False
logger.set_logger()
self.assertFalse(mock_rename.called)
self.assertIsNotNone(logger._logger) self.assertIsNotNone(logger._logger)
self.assertEqual(logger._logger.name, 'test') self.assertEqual(logger._logger.name, 'test')