def reverse(self, string): """ Windows doesn't support reverse. But since you cant change terminal colors on windows, we can safely assume that white background and black text will be a reverse Its not quite reverse on powershell, but it works """ return io.on_color('white', io.color('black', string))
def test_color( self, term_is_colorable_mock, init_mock ): term_is_colorable_mock.return_value = True self.assertEqual('\x1b[33mßßßßß\x1b[39m', io.color('ORANGE', u'ßßßßß')) init_mock.assert_called_once()
def test_color__term_is_not_colorable( self, term_is_colorable_mock, init_mock ): term_is_colorable_mock.return_value = False self.assertEqual('ßßßßß', io.color('ORANGE', u'ßßßßß')) init_mock.assert_not_called()
def test_rescue_generic_exception__no_args(self, echo_mock): dummy_ebcli_app = MagicMock() dummy_ebcli_app.setup = MagicMock( side_effect=TestEbRun.MyDummyGenericException('')) ebrun.run_app(dummy_ebcli_app) echo_mock.assert_called_with( io.bold(io.color('red', 'ERROR: MyDummyGenericException'))) dummy_ebcli_app.close.assert_called_once_with(code=4)
def test_rescue_EBCLIException__without_verbose_or_debug_flag( self, echo_mock): dummy_ebcli_app = MagicMock() dummy_ebcli_app.setup = MagicMock( side_effect=TestEbRun.MyDummyEBCLIException( 'My Exception Message')) ebrun.run_app(dummy_ebcli_app) echo_mock.assert_called_with( io.bold( io.color( 'red', 'ERROR: {}'.format( 'MyDummyEBCLIException - My Exception Message')))) dummy_ebcli_app.close.assert_called_once_with(code=4)
def test_rescue_AttributeError(self, echo_mock): dummy_ebcli_app = MagicMock() dummy_ebcli_app.setup = MagicMock(side_effect=AttributeError( 'This is my error', 'This is my error as well')) ebrun.run_app(dummy_ebcli_app) echo_mock.assert_called_with( io.bold( io.color( 'red', "ERROR: {error_type} - ('{argument_1}', '{argument_2}')". format(error_type='AttributeError', linesep=os.linesep, argument_1='This is my error', argument_2='This is my error as well')))) dummy_ebcli_app.close.assert_called_once_with(code=4)
def color_green(message): io.echo(io.bold(io.color('green', message)))
def color_red(message): io.echo(io.bold(io.color('red', message)))