Skip to content

Commit c8b96cd

Browse files
committed
Merge pull request #153 from dometto/fix_direntries
Fix bug in PathUtils::entries when dir is empty
2 parents 5a77f8b + 105ac6d commit c8b96cd

File tree

2 files changed

+11
-2
lines changed

2 files changed

+11
-2
lines changed

lib/sprockets/path_utils.rb

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,9 +55,12 @@ def directory?(path)
5555
# Returns an empty `Array` if the directory does not exist.
5656
def entries(path)
5757
if File.directory?(path)
58-
Dir.entries(path, encoding: Encoding.default_internal).reject! { |entry|
58+
entries = Dir.entries(path, encoding: Encoding.default_internal)
59+
entries.reject! { |entry|
5960
entry =~ /^\.|~$|^\#.*\#$/
60-
}.sort!
61+
}
62+
entries.sort!
63+
entries
6164
else
6265
[]
6366
end

test/test_path_utils.rb

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,12 @@ def test_entries
4343
"source-maps",
4444
"symlink"
4545
], entries(File.expand_path("../fixtures", __FILE__))
46+
47+
[ ['a', 'b'], ['a', 'b', '.', '..'] ].each do |dir_contents|
48+
Dir.stub :entries, dir_contents do
49+
assert_equal ['a', 'b'], entries(Dir.tmpdir)
50+
end
51+
end
4652

4753
assert_equal [], entries("/tmp/sprockets/missingdir")
4854
end

0 commit comments

Comments
 (0)