1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

Deprecate taint/trust and related methods, and make the methods no-ops

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.
This commit is contained in:
Jeremy Evans 2019-09-24 20:59:12 -07:00
parent c5c05460ac
commit ffd0820ab3
Notes: git 2019-11-18 08:01:15 +09:00
201 changed files with 2292 additions and 2874 deletions

View file

@ -65,24 +65,26 @@ describe "String#scan" do
-> { "cruel world".scan(mock('x')) }.should raise_error(TypeError)
end
it "taints the results if the String argument is tainted" do
a = "hello hello hello".scan("hello".taint)
a.each { |m| m.tainted?.should be_true }
end
ruby_version_is ''...'2.7' do
it "taints the results if the String argument is tainted" do
a = "hello hello hello".scan("hello".taint)
a.each { |m| m.tainted?.should be_true }
end
it "taints the results when passed a String argument if self is tainted" do
a = "hello hello hello".taint.scan("hello")
a.each { |m| m.tainted?.should be_true }
end
it "taints the results when passed a String argument if self is tainted" do
a = "hello hello hello".taint.scan("hello")
a.each { |m| m.tainted?.should be_true }
end
it "taints the results if the Regexp argument is tainted" do
a = "hello".scan(/./.taint)
a.each { |m| m.tainted?.should be_true }
end
it "taints the results if the Regexp argument is tainted" do
a = "hello".scan(/./.taint)
a.each { |m| m.tainted?.should be_true }
end
it "taints the results when passed a Regexp argument if self is tainted" do
a = "hello".taint.scan(/./)
a.each { |m| m.tainted?.should be_true }
it "taints the results when passed a Regexp argument if self is tainted" do
a = "hello".taint.scan(/./)
a.each { |m| m.tainted?.should be_true }
end
end
# jruby/jruby#5513
@ -171,20 +173,22 @@ describe "String#scan with pattern and block" do
$~.should == nil
end
it "taints the results if the String argument is tainted" do
"hello hello hello".scan("hello".taint).each { |m| m.tainted?.should be_true }
end
ruby_version_is ''...'2.7' do
it "taints the results if the String argument is tainted" do
"hello hello hello".scan("hello".taint).each { |m| m.tainted?.should be_true }
end
it "taints the results when passed a String argument if self is tainted" do
"hello hello hello".taint.scan("hello").each { |m| m.tainted?.should be_true }
end
it "taints the results when passed a String argument if self is tainted" do
"hello hello hello".taint.scan("hello").each { |m| m.tainted?.should be_true }
end
it "taints the results if the Regexp argument is tainted" do
"hello".scan(/./.taint).each { |m| m.tainted?.should be_true }
end
it "taints the results if the Regexp argument is tainted" do
"hello".scan(/./.taint).each { |m| m.tainted?.should be_true }
end
it "taints the results when passed a Regexp argument if self is tainted" do
"hello".taint.scan(/./).each { |m| m.tainted?.should be_true }
it "taints the results when passed a Regexp argument if self is tainted" do
"hello".taint.scan(/./).each { |m| m.tainted?.should be_true }
end
end
it "passes block arguments as individual arguments when blocks are provided" do