def test_powerline(): stdout, write = _get_mock_stdout() console = PowerlineConsole(conf=Config(), stdout=stdout) console.log('foo', time=False) write.assert_any_call('\033[49;37m foo \033[0m') console.warn('foo') console(('foo', 92), ('bar', 92), 'baz')
def test_raw_log_write(): stdout, write = _get_mock_stdout() console = SimpleConsole(conf=Config(), stdout=stdout) console.log('foo') assert write.call_count == 2 write.assert_any_call('\n') assertions = [] for call in write.mock_calls: assertions.append(call.called_with.endswith('\033[39mfoo\033[0m')) assert any(assertions)
def test_helpers(): stdout, write = _get_mock_stdout() console = SimpleConsole(conf=Config(True), stdout=stdout) predicate = lambda a, b: lambda x: a in x and b in x anymatch = lambda colln, predicate: any([predicate(c) for c in colln]) callargs = lambda x: [str(x) for x in x] assert predicate('a', 'b')('oh, hello! we have b.') assert anymatch(['foo', 'bar'], predicate('ba', 'ar')) console.info('alpha') assert anymatch(callargs(write.mock_calls), predicate('INFO', 'alpha')) console.error('beta') assert anymatch(callargs(write.mock_calls), predicate('ERROR', 'beta')) console.warn('delta') assert anymatch(callargs(write.mock_calls), predicate('WARN', 'delta')) console.success('pi') assert anymatch(callargs(write.mock_calls), predicate('SUCCESS', 'pi')) console(('Hey', 30), ('You', 31)) assert anymatch(callargs(write.mock_calls), predicate('Hey', 'You'))
def test_simple_console(): console = SimpleConsole(conf=Config()) for func in ('log', 'info', 'warn', 'error', 'success'): assert hasattr(console, func)
def test_resolved_config(): cs = Config() assert hasattr(cs, 'hues') assert hasattr(cs, 'opts') assert hasattr(cs.hues, 'default')
def test_invalid_yaml(self): os.chdir('/var/invalidyml') with self.assertRaises(InvalidConfiguration) as e: Config.load_config() assert 'invalid YAML' in str(e.exception)
def test_invalid_config(self): os.chdir('/var/invalid') with self.assertRaises(InvalidConfiguration) as e: Config.load_config() assert 'not a dictionary' in str(e.exception)
def test_local_nested_config(self): os.chdir('/var/foo/bar/baz') cs = Config.load_config() assert cs['colors']['default'] == 'green'
def test_home_config(self): os.chdir('/var/doom/baz') cs = Config.load_config() assert cs['colors']['default'] == 'red'
def test_default_color(): stdout, write = _get_mock_stdout() console = SimpleConsole(conf=Config(), stdout=stdout) console('foo') write.assert_any_call('\033[39mfoo\033[0m')