class Test_Mappings_AddingAndRemoving(BufferTest):
    def setUp(self):
        super().setUp()
        self.state = state.State(self.view)
        self.mappings = Mappings(self.state)
        self.mappings.clear()

    def testCanAdd(self):
        for (i, data) in enumerate(adding_tests):
            mode, keys, target, msg = data
            self.mappings.add(mode, keys, target)
            self.assertEqual(_mappings[mode][keys], {
                'name': target,
                'type': cmd_types.USER
            }, '{0} [{1}] failed'.format(msg, i))
            self.mappings.clear()

    def testCanRemove(self):
        for (i, data) in enumerate(adding_tests):
            mode, keys, target, msg = data
            self.mappings.add(mode, keys, target)
            self.mappings.remove(mode, keys)

        self.assertFalse(_mappings[modes.NORMAL])
        self.assertFalse(_mappings[modes.VISUAL])
        self.assertFalse(_mappings[modes.VISUAL_LINE])
        self.assertFalse(_mappings[modes.VISUAL_BLOCK])
Beispiel #2
0
 def run(self, edit, mode=None, count=None, cmd=''):
     mappings = Mappings(State(self.view))
     try:
         mappings.remove(modes.VISUAL, cmd)
         mappings.remove(modes.VISUAL_LINE, cmd)
         mappings.remove(modes.VISUAL_BLOCK, cmd)
     except KeyError:
         sublime.status_message('Vintageous: Mapping  not found.')
class Test_Mapping_Expanding(BufferTest):
    def setUp(self):
        super().setUp()
        self.state = state.State(self.view)
        self.mappings = Mappings(self.state)
        self.mappings.clear()

    def testCanExpand(self):
        for (i, data) in enumerate(expanding_tests):
            setup_data, test_data = data

            mode, keys, new_mapping = setup_data
            self.mappings.add(mode, keys, new_mapping)

            self.state.mode = modes.NORMAL

            seq, expected_head, expected_mapping, expected_tail, expected_full, expected_status = test_data
            result = self.mappings.expand_first(seq)

            self.assertEqual(result.head, expected_head, '[{0}] head failed'.format(i))
            self.assertEqual(result.tail, expected_tail, '[{0}] tail failed'.format(i))
            self.assertEqual(result.mapping, expected_mapping, '[{0}] mapping failed'.format(i))
            self.assertEqual(result.sequence, expected_full, '[{0}] sequence failed'.format(i))
            self.assertEqual(result.status, expected_status, '[{0}] status failed'.format(i))

            self.mappings.clear()
class Test_Mapping_Expanding(BufferTest):
    def setUp(self):
        super().setUp()
        self.state = state.State(self.view)
        self.mappings = Mappings(self.state)
        self.mappings.clear()

    def testCanExpand(self):
        for (i, data) in enumerate(expanding_tests):
            setup_data, test_data = data

            mode, keys, new_mapping = setup_data
            self.mappings.add(mode, keys, new_mapping)

            self.state.mode = modes.NORMAL

            seq, expected_head, expected_mapping, expected_tail, expected_full, expected_status = test_data
            result = self.mappings.expand_first(seq)

            self.assertEqual(result.head, expected_head,
                             '[{0}] head failed'.format(i))
            self.assertEqual(result.tail, expected_tail,
                             '[{0}] tail failed'.format(i))
            self.assertEqual(result.mapping, expected_mapping,
                             '[{0}] mapping failed'.format(i))
            self.assertEqual(result.sequence, expected_full,
                             '[{0}] sequence failed'.format(i))
            self.assertEqual(result.status, expected_status,
                             '[{0}] status failed'.format(i))

            self.mappings.clear()
Beispiel #5
0
 def run(self, edit, mode=None, count=None, cmd=''):
     try:
         keys, command = cmd.lstrip().split(' ', 1)
     except ValueError:
         sublime.status_message('Vintageous: Bad mapping format')
         return
     else:
         mappings = Mappings(State(self.view))
         mappings.add(modes.NORMAL, keys, command)
         mappings.add(modes.OPERATOR_PENDING, keys, command)
         mappings.add(modes.VISUAL, keys, command)
 def run(self, edit, mode=None, count=None, cmd=''):
     mappings = Mappings(State(self.view))
     try:
         mappings.remove(modes.VISUAL, cmd)
         mappings.remove(modes.VISUAL_LINE, cmd)
         mappings.remove(modes.VISUAL_BLOCK, cmd)
     except KeyError:
         sublime.status_message('Vintageous: Mapping  not found.')
Beispiel #7
0
 def run(self, edit, mode=None, count=None, cmd=''):
     try:
         # TODO(guillermooo): Instead of parsing this here, add parsers
         # to ex command defs and reuse them here.
         keys, command = cmd.lstrip().split(' ', 1)
     except ValueError:
         sublime.status_message('Vintageous: Bad mapping format')
         return
     else:
         mappings = Mappings(State(self.view))
         mappings.add(modes.NORMAL, keys, command)
         mappings.add(modes.OPERATOR_PENDING, keys, command)
         mappings.add(modes.VISUAL, keys, command)
 def run(self, edit, mode=None, count=None, cmd=''):
     try:
         keys, command = cmd.lstrip().split(' ', 1)
     except ValueError:
         sublime.status_message('Vintageous: Bad mapping format')
         return
     else:
         mappings = Mappings(State(self.view))
         mappings.add(modes.NORMAL, keys, command)
         mappings.add(modes.OPERATOR_PENDING, keys, command)
         mappings.add(modes.VISUAL, keys, command)
Beispiel #9
0
class Test_Mappings_AddingAndRemoving(ViewTest):
    def setUp(self):
        super().setUp()
        self.mappings = Mappings(self.state)
        self.mappings.clear()

    def testCanAdd(self):
        for (i, data) in enumerate(adding_tests):
            mode, keys, target, msg = data
            self.mappings.add(mode, keys, target)
            self.assertEqual(_mappings[mode][keys], {'name': target, 'type': cmd_types.USER}, '{0} [{1}] failed'.format(msg, i))
            self.mappings.clear()

    def testCanRemove(self):
        for (i, data) in enumerate(adding_tests):
            mode, keys, target, msg = data
            self.mappings.add(mode, keys, target)
            self.mappings.remove(mode, keys)

        self.assertFalse(_mappings[modes.NORMAL])
        self.assertFalse(_mappings[modes.VISUAL])
        self.assertFalse(_mappings[modes.VISUAL_LINE])
        self.assertFalse(_mappings[modes.VISUAL_BLOCK])
 def run(self, edit, mode=None, count=None, cmd=''):
     try:
         # TODO(guillermooo): Instead of parsing this here, add parsers
         # to ex command defs and reuse them here.
         keys, command = cmd.lstrip().split(' ', 1)
     except ValueError:
         sublime.status_message('Vintageous: Bad mapping format')
         return
     else:
         mappings = Mappings(State(self.view))
         mappings.add(modes.NORMAL, keys, command)
         mappings.add(modes.OPERATOR_PENDING, keys, command)
         mappings.add(modes.VISUAL, keys, command)
Beispiel #11
0
class Test_Mappings_AddingAndRemoving(BufferTest):
    def setUp(self):
        super().setUp()
        self.state = state.State(self.view)
        self.mappings = Mappings(self.state)
        self.mappings.clear()

    def testCanAdd(self):
        for (i, data) in enumerate(adding_tests):
            mode, keys, target = data
            self.mappings.add(mode, keys, target)
            self.assertEqual(_mappings[mode][keys], target, '[{0}] failed')
            self.mappings.clear()
Beispiel #12
0
class Test_Mappings_AddingAndRemoving(BufferTest):
    def setUp(self):
        super().setUp()
        self.state = state.State(self.view)
        self.mappings = Mappings(self.state)
        self.mappings.clear()

    def testCanAdd(self):
        for (i, data) in enumerate(adding_tests):
            mode, keys, target, msg = data
            self.mappings.add(mode, keys, target)
            self.assertEqual(_mappings[mode][keys], {'name': target, 'type': cmd_types.USER}, '{0} [{1}] failed'.format(msg, i))
            self.mappings.clear()
Beispiel #13
0
 def run(self, edit, mode=None, count=None, cmd=''):
     keys, command = cmd.lstrip().split(' ', 1)
     mappings = Mappings(State(self.view))
     mappings.add(modes.VISUAL, keys, command)
     mappings.add(modes.VISUAL_LINE, keys, command)
     mappings.add(modes.VISUAL_BLOCK, keys, command)
Beispiel #14
0
 def run(self, edit, mode=None, count=None, cmd=''):
     mappings = Mappings(State(self.view))
     try:
         mappings.remove(modes.OPERATOR_PENDING, cmd)
     except KeyError:
         sublime.status_message('Vintageous: Mapping not found.')
Beispiel #15
0
 def run(self, edit, mode=None, count=None, cmd=''):
     keys, command = cmd.lstrip().split(' ', 1)
     mappings = Mappings(State(self.view))
     mappings.add(modes.OPERATOR_PENDING, keys, command)
 def setUp(self):
     super().setUp()
     self.state = state.State(self.view)
     self.mappings = Mappings(self.state)
     self.mappings.clear()
 def setUp(self):
     super().setUp()
     self.state = state.State(self.view)
     self.mappings = Mappings(self.state)
     self.mappings.clear()
Beispiel #18
0
 def setUp(self):
     super().setUp()
     self.mappings = Mappings(self.state)
     self.mappings.clear()
Beispiel #19
0
 def run(self, edit, mode=None, count=None, cmd=''):
     keys, command = cmd.lstrip().split(' ', 1)
     mappings = Mappings(State(self.view))
     mappings.add(modes.VISUAL, keys, command)
     mappings.add(modes.VISUAL_LINE, keys, command)
     mappings.add(modes.VISUAL_BLOCK, keys, command)
Beispiel #20
0
 def run(self, edit, mode=None, count=None, cmd=''):
     mappings = Mappings(State(self.view))
     try:
         mappings.remove(modes.OPERATOR_PENDING, cmd)
     except KeyError:
         sublime.status_message('Vintageous: Mapping not found.')
Beispiel #21
0
 def run(self, edit, mode=None, count=None, cmd=''):
     keys, command = cmd.lstrip().split(' ', 1)
     mappings = Mappings(State(self.view))
     mappings.add(modes.OPERATOR_PENDING, keys, command)
Beispiel #22
0
 def setUp(self):
     super().setUp()
     self.mappings = Mappings(self.state)
     self.mappings.clear()