diff options
author | Andrew Konchin <[email protected]> | 2025-01-06 20:28:22 +0200 |
---|---|---|
committer | Benoit Daloze <[email protected]> | 2025-01-07 12:30:52 +0100 |
commit | 10917c5cc026f839a3dcd072b6e274eed211d0f7 (patch) | |
tree | 869031ac5fe6474a31165b8c22c92c1cc17381ef /spec/ruby/shared/enumerator/enum_for.rb | |
parent | 36d5e2d8f72afcdbbed64ce21bc94134124d691e (diff) |
Update to ruby/spec@18032a7
Notes
Notes:
Merged: https://github.com/ruby/ruby/pull/12517
Diffstat (limited to 'spec/ruby/shared/enumerator/enum_for.rb')
-rw-r--r-- | spec/ruby/shared/enumerator/enum_for.rb | 57 |
1 files changed, 0 insertions, 57 deletions
diff --git a/spec/ruby/shared/enumerator/enum_for.rb b/spec/ruby/shared/enumerator/enum_for.rb deleted file mode 100644 index a67a76c461..0000000000 --- a/spec/ruby/shared/enumerator/enum_for.rb +++ /dev/null @@ -1,57 +0,0 @@ -describe :enum_for, shared: true do - it "is defined in Kernel" do - Kernel.method_defined?(@method).should be_true - end - - it "returns a new enumerator" do - "abc".send(@method).should be_an_instance_of(Enumerator) - end - - it "defaults the first argument to :each" do - enum = [1,2].send(@method) - enum.map { |v| v }.should == [1,2].each { |v| v } - end - - it "sets regexp matches in the caller" do - "wawa".send(@method, :scan, /./).map {|o| $& }.should == ["w", "a", "w", "a"] - a = [] - "wawa".send(@method, :scan, /./).each {|o| a << $& } - a.should == ["w", "a", "w", "a"] - end - - it "exposes multi-arg yields as an array" do - o = Object.new - def o.each - yield :a - yield :b1, :b2 - yield [:c] - yield :d1, :d2 - yield :e1, :e2, :e3 - end - - enum = o.send(@method) - enum.next.should == :a - enum.next.should == [:b1, :b2] - enum.next.should == [:c] - enum.next.should == [:d1, :d2] - enum.next.should == [:e1, :e2, :e3] - end - - it "uses the passed block's value to calculate the size of the enumerator" do - Object.new.enum_for { 100 }.size.should == 100 - end - - it "defers the evaluation of the passed block until #size is called" do - ScratchPad.record [] - - enum = Object.new.enum_for do - ScratchPad << :called - 100 - end - - ScratchPad.recorded.should be_empty - - enum.size - ScratchPad.recorded.should == [:called] - end -end |