1 shared :file_writable_real do |cmd, klass, name|
2 describe "#{name || "#{klass}.#{cmd}"}" do
8 File.delete(@file) if File.exist?(@file)
11 it "returns true if named file is writable by the real user id of the process, otherwise false" do
12 File.open(@file,'w') { klass.send(cmd, @file).should == true }
15 it "raises an ArgumentError if not passed one argument" do
16 lambda { File.writable_real? }.should raise_error(ArgumentError)
19 it "raises a TypeError if not passed a String type" do
20 lambda { klass.send(cmd, 1) }.should raise_error(TypeError)
21 lambda { klass.send(cmd, nil) }.should raise_error(TypeError)
22 lambda { klass.send(cmd, false) }.should raise_error(TypeError)
27 shared :file_writable_real_missing do |cmd, klass, name|
28 describe "#{name || "#{klass}.#{cmd}"}" do
29 it "returns false if the file does not exist" do
30 klass.send(cmd, 'fake_file').should == false