mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
ffd0820ab3
This removes the related tests, and puts the related specs behind version guards. This affects all code in lib, including some libraries that may want to support older versions of Ruby.
30 lines
930 B
Ruby
30 lines
930 B
Ruby
require_relative '../../spec_helper'
|
|
require 'pathname'
|
|
|
|
describe "Pathname.new" do
|
|
it "returns a new Pathname Object with 1 argument" do
|
|
Pathname.new('').should be_kind_of(Pathname)
|
|
end
|
|
|
|
it "raises an ArgumentError when called with \0" do
|
|
-> { Pathname.new("\0")}.should raise_error(ArgumentError)
|
|
end
|
|
|
|
ruby_version_is ''...'2.7' do
|
|
it "is tainted if path is tainted" do
|
|
path = '/usr/local/bin'.taint
|
|
Pathname.new(path).tainted?.should == true
|
|
end
|
|
end
|
|
|
|
it "raises a TypeError if not passed a String type" do
|
|
-> { Pathname.new(nil) }.should raise_error(TypeError)
|
|
-> { Pathname.new(0) }.should raise_error(TypeError)
|
|
-> { Pathname.new(true) }.should raise_error(TypeError)
|
|
-> { Pathname.new(false) }.should raise_error(TypeError)
|
|
end
|
|
|
|
it "initializes with an object with to_path" do
|
|
Pathname.new(mock_to_path('foo')).should == Pathname.new('foo')
|
|
end
|
|
end
|