determine log level from the logger, so it works with logging.conf also

This commit is contained in:
Thomas Waldmann 2015-12-12 18:25:38 +01:00
parent f59db03c60
commit 229512b6f5
2 changed files with 7 additions and 7 deletions

View File

@ -1,5 +1,6 @@
import errno
import fcntl
import logging
import os
import select
import shlex
@ -164,12 +165,13 @@ class RemoteRepository:
opts = []
if args is not None:
opts.append('--umask=%03o' % args.umask)
if args.log_level == 'debug':
root_logger = logging.getLogger()
if root_logger.isEnabledFor(logging.DEBUG):
opts.append('--debug')
elif args.log_level == 'info':
elif root_logger.isEnabledFor(logging.INFO):
opts.append('--info')
elif args.log_level == 'warning':
pass # is default
elif root_logger.isEnabledFor(logging.WARNING):
pass # warning is default
else:
raise ValueError('log level missing, fix this code')
if testing:

View File

@ -337,13 +337,11 @@ class RemoteRepositoryTestCase(RepositoryTestCase):
def test_borg_cmd(self):
class MockArgs:
remote_path = 'borg'
log_level = 'warning'
umask = 0o077
assert self.repository.borg_cmd(None, testing=True) == [sys.executable, '-m', 'borg.archiver', 'serve' ]
args = MockArgs()
assert self.repository.borg_cmd(args, testing=False) == ['borg', 'serve', '--umask=077']
args.log_level = 'info'
# note: test logger is on info log level, so --info gets added automagically
assert self.repository.borg_cmd(args, testing=False) == ['borg', 'serve', '--umask=077', '--info']
args.remote_path = 'borg-0.28.2'
assert self.repository.borg_cmd(args, testing=False) == ['borg-0.28.2', 'serve', '--umask=077', '--info']