           """
         editor.setCursorBufferPosition([0, 0])
 
-        waitsForPromise ->
-          startNarrow('scan').then (_narrow) ->
-            {provider, ui, ensure} = narrow = _narrow
+        waitsForStartScan()
 
       it "redraw items when item area was mutated", ->
         originalText = ui.editor.getText()
 
-        runs ->
-          narrow.waitsForRefresh ->
-            range = [[1, 0], ui.editor.getEofBufferPosition()]
-            ui.editor.setTextInBufferRange(range, 'abc\ndef\n')
-            ensure text: "\nabc\ndef\n"
-
-        runs ->
-          narrow.waitsForRefresh -> dispatchEditorCommand('narrow:refresh')
+        narrow.waitsForRefresh ->
+          range = [[1, 0], ui.editor.getEofBufferPosition()]
+          ui.editor.setTextInBufferRange(range, 'abc\ndef\n')
+          ensure text: "\nabc\ndef\n"
+
+        narrow.waitsForRefresh ->
+          dispatchEditorCommand('narrow:refresh')
 
         runs ->
           ensure text: originalText

        """
      editor.setCursorBufferPosition([0, 0])

    describe "directionToOpen settings", ->
      ensurePaneLayoutAfterStart = (fn) ->
        waitsForPromise ->
          startNarrow('scan').then ({ui}) ->
            ensurePaneLayout(fn(ui))

      describe "from one pane", ->
        beforeEach ->

          """
        editor.setCursorBufferPosition([0, 0])

        waitsForStartScan()

        runs ->
          ensure "p",
