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.
32 lines
938 B
Ruby
32 lines
938 B
Ruby
require_relative '../spec_helper'
|
|
|
|
with_feature :readline do
|
|
describe "Readline::HISTORY.shift" do
|
|
it "returns nil when the history is empty" do
|
|
Readline::HISTORY.shift.should be_nil
|
|
end
|
|
|
|
it "returns and removes the first item from the history" do
|
|
Readline::HISTORY.push("1", "2", "3")
|
|
Readline::HISTORY.size.should == 3
|
|
|
|
Readline::HISTORY.shift.should == "1"
|
|
Readline::HISTORY.size.should == 2
|
|
|
|
Readline::HISTORY.shift.should == "2"
|
|
Readline::HISTORY.size.should == 1
|
|
|
|
Readline::HISTORY.shift.should == "3"
|
|
Readline::HISTORY.size.should == 0
|
|
end
|
|
|
|
ruby_version_is ''...'2.7' do
|
|
it "taints the returned strings" do
|
|
Readline::HISTORY.push("1", "2", "3")
|
|
Readline::HISTORY.shift.tainted?.should be_true
|
|
Readline::HISTORY.shift.tainted?.should be_true
|
|
Readline::HISTORY.shift.tainted?.should be_true
|
|
end
|
|
end
|
|
end
|
|
end
|