diff --git a/spec/atom/file-finder-spec.coffee b/spec/atom/file-finder-spec.coffee index 1faf3181f..73fa6cd97 100644 --- a/spec/atom/file-finder-spec.coffee +++ b/spec/atom/file-finder-spec.coffee @@ -59,11 +59,15 @@ describe 'FileFinder', -> expect(finder.find('li:last')).toHaveClass "selected" describe "select", -> - it "when an file is selected atom.open is called", -> - spyOn(atom, 'open') + selectedCallback = jasmine.createSpy 'selected' + + beforeEach -> + finder = FileFinder.build {urls, selected: selectedCallback} + + it "when a file is selected Editor.open is called", -> finder.moveDown() finder.select() - expect(atom.open).toHaveBeenCalledWith(urls[1]) + expect(selectedCallback).toHaveBeenCalledWith(urls[1]) it "when no file is selected, does nothing", -> spyOn(atom, 'open') diff --git a/spec/atom/project-spec.coffee b/spec/atom/project-spec.coffee index 8c5665ef2..39f6517a6 100644 --- a/spec/atom/project-spec.coffee +++ b/spec/atom/project-spec.coffee @@ -8,8 +8,7 @@ describe "Project", -> describe ".getFilePaths()", -> it "returns a promise which resolves to a list of all file urls in the project, recursively", -> - expectedPaths = for url in fs.list(project.url, true) when fs.isFile url - url.replace project.url, '' + expectedPaths = (url for url in fs.list(project.url, true) when fs.isFile url) waitsForPromise -> project.getFilePaths().done (result) -> diff --git a/spec/atom/root-view-spec.coffee b/spec/atom/root-view-spec.coffee index 706865e7e..84d8de2af 100644 --- a/spec/atom/root-view-spec.coffee +++ b/spec/atom/root-view-spec.coffee @@ -55,14 +55,6 @@ describe "RootView", -> runs -> expect(rootView.fileFinder.urlList.children('li').length).toBe 3 - it "removes common path prefix from files", -> - waitsForPromise -> - rootView.toggleFileFinder() - - runs -> - commonPathPattern = new RegExp("^" + fs.directory(url)) - expect(rootView.fileFinder.urlList.children('li:first').text()).not.toMatch commonPathPattern - describe "when there is no project", -> beforeEach -> rootView = RootView.build() diff --git a/src/atom/file-finder.coffee b/src/atom/file-finder.coffee index 4d3a4c9dd..cdad3bf00 100644 --- a/src/atom/file-finder.coffee +++ b/src/atom/file-finder.coffee @@ -14,7 +14,7 @@ class FileFinder extends Template urls: null maxResults: null - initialize: ({@urls}) -> + initialize: ({@urls, @selected}) -> @maxResults = 10 @populateUrlList() @@ -34,8 +34,7 @@ class FileFinder extends Template select: -> filePath = @findSelectedLi().text() - atom.open filePath if filePath - + @selected(filePath) if filePath and @selected moveUp: -> @findSelectedLi() diff --git a/src/atom/project.coffee b/src/atom/project.coffee index 87c501104..9ed505636 100644 --- a/src/atom/project.coffee +++ b/src/atom/project.coffee @@ -8,6 +8,5 @@ class Project getFilePaths: -> projectUrl = @url fs.async.list(@url, true).pipe (urls) -> - urls = (url.replace(projectUrl, "") for url in urls when fs.isFile(url)) - urls + url for url in urls when fs.isFile(url) diff --git a/src/atom/root-view.coffee b/src/atom/root-view.coffee index e198fd174..17560521b 100644 --- a/src/atom/root-view.coffee +++ b/src/atom/root-view.coffee @@ -43,6 +43,6 @@ class RootView extends Template @fileFinder = null else @project.getFilePaths().done (urls) => - @fileFinder = FileFinder.build({urls}) + @fileFinder = FileFinder.build({urls, selected: (url) => @editor.open(url)}) @addPane(@fileFinder) @fileFinder.input.focus()