Sha256: 38cd8f9b70cb94b41821dd93ce02010dbd6b0d51308563d5866efd3df93b2092

Contents?: true

Size: 1.37 KB

Versions: 19

Compression:

Stored size: 1.37 KB

Contents

describe :file_file, :shared => true do
  before :each do
    platform_is :windows do
      @null = "NUL"
      @dir  = "C:\\"
    end

    platform_is_not :windows do
      @null = "/dev/null"
      @dir  = "/bin"
    end

    @file = tmp("test.txt")
    touch @file
  end

  after :each do
    rm_r @file
  end

  it "returns true if the named file exists and is a regular file." do
    @object.send(@method, @file).should == true
if System.get_property('platform') == 'WINDOWS' || System.get_property('platform') == 'WINDOWS_DESKTOP'
    @object.send(@method, @dir).should == false
end    
  end

  ruby_version_is "1.9" do
    it "accepts an object that has a #to_path method" do
    @object.send(@method, mock_to_path(@file)).should == true
    end
  end


  platform_is_not :windows do
    it "return true if the null device exists and is a regular file." do
      @object.send(@method, @null).should == false # May fail on MS Windows
    end
  end

  it "raises an ArgumentError if not passed one argument" do
    lambda { @object.send(@method)               }.should raise_error(ArgumentError)
    lambda { @object.send(@method, @null, @file) }.should raise_error(ArgumentError)
  end

  it "raises a TypeError if not passed a String type" do
    lambda { @object.send(@method, nil) }.should raise_error(TypeError)
    lambda { @object.send(@method, 1)   }.should raise_error(TypeError)
  end
end

Version data entries

19 entries across 19 versions & 2 rubygems

Version Path
rhodes-7.6.0 spec/framework_spec/app/spec/shared/file/file.rb
rhodes-7.5.1 spec/framework_spec/app/spec/shared/file/file.rb
rhodes-7.4.1 spec/framework_spec/app/spec/shared/file/file.rb
rhodes-7.1.17 spec/framework_spec/app/spec/shared/file/file.rb
rhodes-6.2.0 spec/framework_spec/app/spec/shared/file/file.rb
rhodes-6.0.11 spec/framework_spec/app/spec/shared/file/file.rb
rhodes-5.5.18 spec/framework_spec/app/spec/shared/file/file.rb
rhodes-5.5.17 spec/framework_spec/app/spec/shared/file/file.rb
rhodes-5.5.15 spec/framework_spec/app/spec/shared/file/file.rb
rhodes-5.5.0.22 spec/framework_spec/app/spec/shared/file/file.rb
rhodes-5.5.2 spec/framework_spec/app/spec/shared/file/file.rb
rhodes-5.5.0.7 spec/framework_spec/app/spec/shared/file/file.rb
rhodes-5.5.0.3 spec/framework_spec/app/spec/shared/file/file.rb
rhodes-5.5.0 spec/framework_spec/app/spec/shared/file/file.rb
tauplatform-1.0.3 spec/framework_spec/app/spec/shared/file/file.rb
tauplatform-1.0.2 spec/framework_spec/app/spec/shared/file/file.rb
tauplatform-1.0.1 spec/framework_spec/app/spec/shared/file/file.rb
rhodes-3.5.1.12 spec/framework_spec/app/spec/shared/file/file.rb
rhodes-3.4.2 spec/framework_spec/app/spec/shared/file/file.rb