Exemple #1
0
    def test_add_index_w_neglecting_escape_sequence_simple(self):
        for inp in [u'', u'123456789', u'\n', u'\t', u' ', u'  123  ']:
            act_index_seq = etcut.add_index_w_neglecting_escape_sequence(inp)
            exp_index_seq = list(xrange(len(inp))) + [len(inp)]

            self.assertEqual(act_index_seq, exp_index_seq)
            self.assertSequenceEqual([inp[i] for i in act_index_seq[:-1]], inp)
Exemple #2
0
    def test_add_index_w_neglecting_escape_sequence(self):
        escape_sequence_text_red = u'\x1b[31m'
        escape_sequence_text_reset = u'\x1b[m'
        inp = u'An ' + escape_sequence_text_red + u'apple' + escape_sequence_text_reset + ' is red.'
        act_index_seq = etcut.add_index_w_neglecting_escape_sequence(inp)
        exp_index_seq = [0,1,2] + \
                [None] * len(escape_sequence_text_red) + \
                [3,4,5,6,7] + \
                [None] * len(escape_sequence_text_reset) + \
                [8,9,10,11,12,13,14,15] + \
                [16]

        self.assertEqual(act_index_seq, exp_index_seq)
Exemple #3
0
    def test_CutWithThruingEscapeSequence_w_escape_sequence(self):
        sut = etcut.CutWithThruingEscapeSequence((0, 3), starting_leader=None, ending_leader=None)
        escape_sequence_text_red = u'\x1b[31m'
        escape_sequence_text_reset = u'\x1b[m'
        char_seq = u'An ' + escape_sequence_text_red + u'apple' + escape_sequence_text_reset + ' is red.'
        index_seq = etcut.add_index_w_neglecting_escape_sequence(char_seq)
        act = sut._cut(char_seq, index_seq)
        self.assertEqual(act, u'An ' + escape_sequence_text_red + escape_sequence_text_reset)

        sut = etcut.CutWithThruingEscapeSequence((3, 6), starting_leader=None, ending_leader=None)
        act = sut._cut(char_seq, index_seq)
        self.assertEqual(act, escape_sequence_text_red + u'app' + escape_sequence_text_reset)

        sut = etcut.CutWithThruingEscapeSequence((-3, None), starting_leader=None, ending_leader=None)
        act = sut._cut(char_seq, index_seq)
        self.assertEqual(act, escape_sequence_text_red + escape_sequence_text_reset + u'ed.')