         expect(alphaDir.children.length).toBe 2
 
         waitsFor "directory view contents to refresh", ->
-          findDirectoryContainingText(treeView.roots[0], 'alpha').querySelectorAll('.entry').length > 2
-
-        runs ->
-          expect(findDirectoryContainingText(treeView.roots[0], 'alpha').querySelectorAll('.entry').length).toBe 3
+          findDirectoryContainingText(treeView.roots[0], 'alpha').querySelectorAll('.entry').length > alphaDirContents and
+          findDirectoryContainingText(treeView.roots[0], 'gamma').querySelectorAll('.entry').length < gammaDirContents
+
+        runs ->
+          expect(findDirectoryContainingText(treeView.roots[0], 'alpha').querySelectorAll('.entry').length).toBe alphaDirContents + 1
+          expect(findDirectoryContainingText(treeView.roots[0], 'gamma').querySelectorAll('.entry').length).toBe gammaDirContents - 1
 
       it "shouldn't update editors with similar file paths", ->
         deltaFilePath2 = path.join(gammaDirPath, 'delta.txt2')

          expect(alphaDir.children.length).toBe 2

        waitsFor "directory view contents to refresh", ->
          findDirectoryContainingText(treeView.roots[0], 'alpha').querySelectorAll('.entry').length > 2

        runs ->
          expect(findDirectoryContainingText(treeView.roots[0], 'alpha').querySelectorAll('.entry').length).toBe 3

    describe "when dragging a directory from the OS onto a DirectoryView's header", ->
      it "should move the directory to the hovered directory", ->

        alphaDir = findDirectoryContainingText(treeView.roots[0], 'alpha')
        alphaDir.expand()

        alphaDirContents = findDirectoryContainingText(treeView.roots[0], 'alpha').querySelectorAll('.entry').length

        dropEvent = eventHelpers.buildExternalDropEvent([gammaDirPath], alphaDir)
        treeView.onDrop(dropEvent)
        expect(alphaDir.children.length).toBe 2

        waitsFor "directory view contents to refresh", ->
          findDirectoryContainingText(treeView.roots[0], 'alpha').querySelectorAll('.entry').length > alphaDirContents

        runs ->
          expect(findDirectoryContainingText(treeView.roots[0], 'alpha').querySelectorAll('.entry').length).toBe alphaDirContents + 1

    describe "when dragging a file and directory from the OS onto a DirectoryView's header", ->
      it "should move the file and directory to the hovered directory", ->
