from __future__ import unicode_literals
from bpython.test import unittest
from bpython.curtsiesfrontend import parse
from curtsies.fmtfuncs import yellow, cyan, green, bold
class TestExecArgs(unittest.TestCase):
def test_parse(self):
self.assertEquals(parse.parse('\x01y\x03print\x04'), yellow('print'))
self.assertEquals(
parse.parse('\x01y\x03print\x04\x01c\x03 \x04\x01g\x031\x04\x01c'
'\x03 \x04\x01Y\x03+\x04\x01c\x03 \x04\x01g\x032\x04'),
yellow('print') + cyan(' ') + green('1') + cyan(' ') +
bold(yellow('+')) + cyan(' ') + green(u'2'))
def test_peal_off_string(self):
self.assertEquals(parse.peel_off_string('\x01RI\x03]\x04asdf'),
({'bg': 'I', 'string': ']', 'fg': 'R', 'colormarker':
'\x01RI', 'bold': ''}, 'asdf'))