summaryrefslogtreecommitdiff
path: root/spec/rubyspec/core/dir/mkdir_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/rubyspec/core/dir/mkdir_spec.rb')
-rw-r--r--spec/rubyspec/core/dir/mkdir_spec.rb85
1 files changed, 0 insertions, 85 deletions
diff --git a/spec/rubyspec/core/dir/mkdir_spec.rb b/spec/rubyspec/core/dir/mkdir_spec.rb
deleted file mode 100644
index 7eb8a8fe6c..0000000000
--- a/spec/rubyspec/core/dir/mkdir_spec.rb
+++ /dev/null
@@ -1,85 +0,0 @@
-require File.expand_path('../../../spec_helper', __FILE__)
-require File.expand_path('../fixtures/common', __FILE__)
-
-describe "Dir.mkdir" do
- before :all do
- DirSpecs.create_mock_dirs
- end
-
- after :all do
- DirSpecs.delete_mock_dirs
- end
-
- it "creates the named directory with the given permissions" do
- DirSpecs.clear_dirs
-
- begin
- File.exist?('nonexisting').should == false
- Dir.mkdir 'nonexisting'
- File.exist?('nonexisting').should == true
- platform_is_not :windows do
- Dir.mkdir 'default_perms'
- a = File.stat('default_perms').mode
- Dir.mkdir 'reduced', (a - 1)
- File.stat('reduced').mode.should_not == a
- end
- platform_is :windows do
- Dir.mkdir 'default_perms', 0666
- a = File.stat('default_perms').mode
- Dir.mkdir 'reduced', 0444
- File.stat('reduced').mode.should_not == a
- end
-
- Dir.mkdir('always_returns_0').should == 0
- platform_is_not(:windows) do
- File.chmod(0777, "nonexisting","default_perms","reduced","always_returns_0")
- end
- platform_is_not(:windows) do
- File.chmod(0644, "nonexisting","default_perms","reduced","always_returns_0")
- end
- ensure
- DirSpecs.clear_dirs
- end
- end
-
- it "calls #to_path on non-String arguments" do
- DirSpecs.clear_dirs
- p = mock('path')
- p.should_receive(:to_path).and_return('nonexisting')
- Dir.mkdir(p)
- DirSpecs.clear_dirs
- end
-
- it "raises a SystemCallError if any of the directories in the path before the last does not exist" do
- lambda { Dir.mkdir "#{DirSpecs.nonexistent}/subdir" }.should raise_error(SystemCallError)
- end
-
- it "raises Errno::EEXIST if the specified directory already exists" do
- lambda { Dir.mkdir("#{DirSpecs.mock_dir}/dir") }.should raise_error(Errno::EEXIST)
- end
-
- it "raises Errno::EEXIST if the argument points to the existing file" do
- lambda { Dir.mkdir("#{DirSpecs.mock_dir}/file_one.ext") }.should raise_error(Errno::EEXIST)
- end
-end
-
-# The permissions flag are not supported on Windows as stated in documentation:
-# The permissions may be modified by the value of File.umask, and are ignored on NT.
-platform_is_not :windows do
- describe "Dir.mkdir" do
- before :each do
- @dir = tmp "noperms"
- end
-
- after :each do
- File.chmod 0777, @dir
- rm_r @dir
- end
-
- it "raises a SystemCallError when lacking adequate permissions in the parent dir" do
- Dir.mkdir @dir, 0000
-
- lambda { Dir.mkdir "#{@dir}/subdir" }.should raise_error(SystemCallError)
- end
- end
-end