def test_vi_block_editing():
 feed = partial(_feed_cli_with_input, editing_mode=EditingMode.VI, multiline=True)
 operations = u'-line1\n-line2\n-line3\n-line4\n-line5\n-line6\x1bkkkkkkkj0l\x16jjlllinsert***\x1b\n'
 (result, cli) = feed(operations.replace(u'insert', u'I'))
 assert (result.text == u'-line1\n-***line2\n-***line3\n-***line4\n-line5\n-line6')
 (result, cli) = feed(operations.replace(u'insert', u'A'))
 assert (result.text == u'-line1\n-line***2\n-line***3\n-line***4\n-line5\n-line6')

def test_vi_block_editing ( ) : feed = partial ( _feed_cli_with_input , editing_mode = EditingMode . VI , multiline = True ) operations = u'-line1\n-line2\n-line3\n-line4\n-line5\n-line6\x1bkkkkkkkj0l\x16jjlllinsert***\x1b\n' ( result , cli ) = feed ( operations . replace ( u'insert' , u'I' ) ) assert ( result . text == u'-line1\n-***line2\n-***line3\n-***line4\n-line5\n-line6' ) ( result , cli ) = feed ( operations . replace ( u'insert' , u'A' ) ) assert ( result . text == u'-line1\n-line***2\n-line***3\n-line***4\n-line5\n-line6' )
test vi control-v style block insertion .