         expect(cursor1.getBufferPosition()).toEqual [0,29]
         expect(cursor2.getBufferPosition()).toEqual [1,30]
 
+    describe "move-to-next-word", ->
+      it "moves the cursor to the next word or the end of file if there is no next word", ->
+        editor.setCursorBufferPosition [2, 5]
+        editor.addCursorAtBufferPosition [3, 60]
+        [cursor1, cursor2] = editor.getCursors()
+
+        editor.trigger 'move-to-next-word'
+
+        expect(cursor1.getBufferPosition()).toEqual [2, 7]
+        expect(cursor2.getBufferPosition()).toEqual [4, 4]
+
+        buffer.insert([12, 2], '   ')
+        cursor1.setBufferPosition([12, 1])
+        expect(cursor1.getBufferPosition()).toEqual [12, 1]
+        editor.trigger 'move-to-next-word'
+
+        expect(cursor1.getBufferPosition()).toEqual [12, 5]
+
     describe ".setCursorScreenPosition({row, column})", ->
       beforeEach ->
         editor.attachToDom()

            editor.lines.trigger 'mouseup'
            expect(editor.getSelectedText()).toBe "    if (items.length <= 1) return items;"

    describe "move-to-next-word", ->
      it "moves the cursor to the next word or the end of file if there is no next word", ->
        editor.setCursorBufferPosition [2, 5]
        editor.addCursorAtBufferPosition [3, 60]
        [cursor1, cursor2] = editor.getCursors()

        editor.trigger 'move-to-next-word'

        expect(cursor1.getBufferPosition()).toEqual [2, 7]
        expect(cursor2.getBufferPosition()).toEqual [4, 4]

        buffer.insert([12, 2], '   ')
        cursor1.setBufferPosition([12, 1])
        expect(cursor1.getBufferPosition()).toEqual [12, 1]
        editor.trigger 'move-to-next-word'

        expect(cursor1.getBufferPosition()).toEqual [12, 5]

  describe "auto indent/outdent", ->
    beforeEach ->
      editor.autoIndent = true

        beforeEach ->
          setEditorWidthInChars(editor, 20)
          editor.setSoftWrap(true)

    describe "when a mousedown event occurs in the editor", ->
      beforeEach ->
