       keydown 'u'
       expect(editor.getText()).toBe "abc\n  012\n"
 
-
   describe "the a keybinding", ->
     beforeEach ->
       editor.getBuffer().setText("012\n")

      expect(vimState.isOperatorPending()).toBe true
      editor.commandModeInputView.viewModel.cancel()

      # now again cancel op, although there is none pending
      expect(vimState.isOperatorPending()).toBe false

      # which should not raise an exception
      expect(-> editor.commandModeInputView.viewModel.cancel()).not.toThrow()


  describe "the x keybinding", ->
    describe "on a line with content", ->

    opts.raw = true
    keydown(key, opts)

  describe "cancelling operations", ->
    it "does not throw an error even if no operation is pending", ->
      # cancel operation pushes an empty input operation
      # doing this without a pending operation throws an exception
      expect(-> vimState.pushOperations(new Input(''))).toThrow()
