ruby--ruby/spec/ruby/library/find/fixtures/common.rb

175 lines
3.3 KiB
Ruby
Raw Normal View History

module FindDirSpecs
def self.mock_dir(dirs = ['find_specs_mock'])
@mock_dir ||= tmp("")
File.join @mock_dir, dirs
end
# The names of the fixture directories and files used by
# various Find specs.
def self.mock_dir_files
unless @mock_dir_files
@mock_dir_files = %w[
.dotfile
.dotsubdir/.dotfile
.dotsubdir/nondotfile
deeply/.dotfile
deeply/nested/.dotfile.ext
deeply/nested/directory/structure/.ext
deeply/nested/directory/structure/bar
deeply/nested/directory/structure/baz
deeply/nested/directory/structure/file_one
deeply/nested/directory/structure/file_one.ext
deeply/nested/directory/structure/foo
deeply/nondotfile
file_one.ext
file_two.ext
dir_filename_ordering
dir/filename_ordering
nondotfile
subdir_one/.dotfile
subdir_one/nondotfile
subdir_two/nondotfile
subdir_two/nondotfile.ext
brace/a
brace/a.js
brace/a.erb
brace/a.js.rjs
brace/a.html.erb
special/+
special/^
special/$
special/(
special/)
special/[
special/]
special/{
special/}
special/test{1}/file[1]
]
platform_is_not :windows do
@mock_dir_files += %w[
special/*
special/?
special/|
]
end
end
@mock_dir_files
end
def self.create_mock_dirs
umask = File.umask 0
mock_dir_files.each do |name|
file = File.join mock_dir, name
mkdir_p File.dirname(file)
touch file
end
File.umask umask
end
def self.delete_mock_dirs
rm_r mock_dir
end
def self.expected_paths
unless @expected_paths
@expected_paths = %w[
.dotfile
.dotsubdir
.dotsubdir/.dotfile
.dotsubdir/nondotfile
deeply
deeply/.dotfile
deeply/nested
deeply/nested/.dotfile.ext
deeply/nested/directory
deeply/nested/directory/structure
deeply/nested/directory/structure/.ext
deeply/nested/directory/structure/bar
deeply/nested/directory/structure/baz
deeply/nested/directory/structure/file_one
deeply/nested/directory/structure/file_one.ext
deeply/nested/directory/structure/foo
deeply/nondotfile
file_one.ext
file_two.ext
dir_filename_ordering
dir
dir/filename_ordering
nondotfile
subdir_one
subdir_one/.dotfile
subdir_one/nondotfile
subdir_two
subdir_two/nondotfile
subdir_two/nondotfile.ext
brace
brace/a
brace/a.js
brace/a.erb
brace/a.js.rjs
brace/a.html.erb
special
special/+
special/^
special/$
special/(
special/)
special/[
special/]
special/{
special/}
special/test{1}
special/test{1}/file[1]
]
platform_is_not :windows do
@expected_paths += %w[
special/*
special/?
special/|
]
end
@expected_paths.map! do |file|
File.join(mock_dir, file)
end
@expected_paths << mock_dir
@expected_paths.sort!
end
@expected_paths
end
end