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

Moved Array#sample to rbinc

This commit is contained in:
Nobuyoshi Nakada 2020-01-26 18:34:18 +09:00
parent 29eb1b1602
commit d4e1d4e94e
No known key found for this signature in database
GPG key ID: 4BC7D6DF58D8DF60
3 changed files with 45 additions and 62 deletions

View file

@ -65,21 +65,24 @@ describe "Array#sample" do
end
describe "with options" do
it "calls #to_hash to convert the passed Object" do
obj = mock("array_sample")
obj.should_receive(:to_hash).and_return({})
obj.should_not_receive(:to_int)
ruby_version_is ""..."2.8" do
# keyword argument since 2.8
it "calls #to_hash to convert the passed Object" do
obj = mock("array_sample")
obj.should_receive(:to_hash).and_return({})
obj.should_not_receive(:to_int)
[1, 2].sample(obj).should be_an_instance_of(Fixnum)
end
[1, 2].sample(obj).should be_an_instance_of(Fixnum)
end
it "calls #to_int on the first argument and #to_hash on the second when passed Objects" do
count = mock("array_sample_count")
count.should_receive(:to_int).and_return(2)
options = mock("array_sample_options")
options.should_receive(:to_hash).and_return({})
it "calls #to_int on the first argument and #to_hash on the second when passed Objects" do
count = mock("array_sample_count")
count.should_receive(:to_int).and_return(2)
options = mock("array_sample_options")
options.should_receive(:to_hash).and_return({})
[1, 2].sample(count, options).size.should == 2
[1, 2].sample(count, options).size.should == 2
end
end
it "calls #rand on the Object passed by the :random key in the arguments Hash" do