summaryrefslogtreecommitdiff
path: root/spec/rubyspec/core/enumerator
diff options
context:
space:
mode:
authoreregon <eregon@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-09-20 20:18:52 +0000
committereregon <eregon@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-09-20 20:18:52 +0000
commit1d15d5f08032acf1b7bceacbb450d617ff6e0931 (patch)
treea3785a79899302bc149e4a6e72f624ac27dc1f10 /spec/rubyspec/core/enumerator
parent75bfc6440d595bf339007f4fb280fd4d743e89c1 (diff)
Move spec/rubyspec to spec/ruby for consistency
* Other ruby implementations use the spec/ruby directory. [Misc #13792] [ruby-core:82287] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59979 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'spec/rubyspec/core/enumerator')
-rw-r--r--spec/rubyspec/core/enumerator/each_spec.rb5
-rw-r--r--spec/rubyspec/core/enumerator/each_with_index_spec.rb38
-rw-r--r--spec/rubyspec/core/enumerator/each_with_object_spec.rb6
-rw-r--r--spec/rubyspec/core/enumerator/enum_for_spec.rb6
-rw-r--r--spec/rubyspec/core/enumerator/enumerator_spec.rb7
-rw-r--r--spec/rubyspec/core/enumerator/feed_spec.rb52
-rw-r--r--spec/rubyspec/core/enumerator/first_spec.rb7
-rw-r--r--spec/rubyspec/core/enumerator/fixtures/common.rb9
-rw-r--r--spec/rubyspec/core/enumerator/generator/each_spec.rb40
-rw-r--r--spec/rubyspec/core/enumerator/generator/initialize_spec.rb26
-rw-r--r--spec/rubyspec/core/enumerator/initialize_spec.rb61
-rw-r--r--spec/rubyspec/core/enumerator/inject_spec.rb15
-rw-r--r--spec/rubyspec/core/enumerator/inspect_spec.rb17
-rw-r--r--spec/rubyspec/core/enumerator/lazy/collect_concat_spec.rb8
-rw-r--r--spec/rubyspec/core/enumerator/lazy/collect_spec.rb8
-rw-r--r--spec/rubyspec/core/enumerator/lazy/drop_spec.rb52
-rw-r--r--spec/rubyspec/core/enumerator/lazy/drop_while_spec.rb60
-rw-r--r--spec/rubyspec/core/enumerator/lazy/enum_for_spec.rb8
-rw-r--r--spec/rubyspec/core/enumerator/lazy/find_all_spec.rb8
-rw-r--r--spec/rubyspec/core/enumerator/lazy/fixtures/classes.rb54
-rw-r--r--spec/rubyspec/core/enumerator/lazy/flat_map_spec.rb8
-rw-r--r--spec/rubyspec/core/enumerator/lazy/force_spec.rb30
-rw-r--r--spec/rubyspec/core/enumerator/lazy/grep_spec.rb82
-rw-r--r--spec/rubyspec/core/enumerator/lazy/grep_v_spec.rb86
-rw-r--r--spec/rubyspec/core/enumerator/lazy/initialize_spec.rb63
-rw-r--r--spec/rubyspec/core/enumerator/lazy/lazy_spec.rb16
-rw-r--r--spec/rubyspec/core/enumerator/lazy/map_spec.rb12
-rw-r--r--spec/rubyspec/core/enumerator/lazy/reject_spec.rb60
-rw-r--r--spec/rubyspec/core/enumerator/lazy/select_spec.rb8
-rw-r--r--spec/rubyspec/core/enumerator/lazy/shared/collect.rb56
-rw-r--r--spec/rubyspec/core/enumerator/lazy/shared/collect_concat.rb72
-rw-r--r--spec/rubyspec/core/enumerator/lazy/shared/select.rb60
-rw-r--r--spec/rubyspec/core/enumerator/lazy/shared/to_enum.rb50
-rw-r--r--spec/rubyspec/core/enumerator/lazy/take_spec.rb66
-rw-r--r--spec/rubyspec/core/enumerator/lazy/take_while_spec.rb60
-rw-r--r--spec/rubyspec/core/enumerator/lazy/to_enum_spec.rb8
-rw-r--r--spec/rubyspec/core/enumerator/lazy/uniq_spec.rb39
-rw-r--r--spec/rubyspec/core/enumerator/lazy/zip_spec.rb74
-rw-r--r--spec/rubyspec/core/enumerator/new_spec.rb6
-rw-r--r--spec/rubyspec/core/enumerator/next_spec.rb6
-rw-r--r--spec/rubyspec/core/enumerator/next_values_spec.rb55
-rw-r--r--spec/rubyspec/core/enumerator/peek_spec.rb36
-rw-r--r--spec/rubyspec/core/enumerator/peek_values_spec.rb57
-rw-r--r--spec/rubyspec/core/enumerator/rewind_spec.rb38
-rw-r--r--spec/rubyspec/core/enumerator/size_spec.rb26
-rw-r--r--spec/rubyspec/core/enumerator/to_enum_spec.rb6
-rw-r--r--spec/rubyspec/core/enumerator/with_index_spec.rb72
-rw-r--r--spec/rubyspec/core/enumerator/with_object_spec.rb6
-rw-r--r--spec/rubyspec/core/enumerator/yielder/append_spec.rb35
-rw-r--r--spec/rubyspec/core/enumerator/yielder/initialize_spec.rb18
-rw-r--r--spec/rubyspec/core/enumerator/yielder/yield_spec.rb16
51 files changed, 0 insertions, 1714 deletions
diff --git a/spec/rubyspec/core/enumerator/each_spec.rb b/spec/rubyspec/core/enumerator/each_spec.rb
deleted file mode 100644
index a6ecf2af2d..0000000000
--- a/spec/rubyspec/core/enumerator/each_spec.rb
+++ /dev/null
@@ -1,5 +0,0 @@
-require File.expand_path('../../../shared/enumerator/each', __FILE__)
-
-describe "Enumerator#each" do
- it_behaves_like(:enum_each, :each)
-end
diff --git a/spec/rubyspec/core/enumerator/each_with_index_spec.rb b/spec/rubyspec/core/enumerator/each_with_index_spec.rb
deleted file mode 100644
index c8cb0bd496..0000000000
--- a/spec/rubyspec/core/enumerator/each_with_index_spec.rb
+++ /dev/null
@@ -1,38 +0,0 @@
-require File.expand_path('../../../spec_helper', __FILE__)
-require File.expand_path('../../../shared/enumerator/with_index', __FILE__)
-require File.expand_path('../../enumerable/shared/enumeratorized', __FILE__)
-
-describe "Enumerator#each_with_index" do
- it_behaves_like(:enum_with_index, :each_with_index)
- it_behaves_like(:enumeratorized_with_origin_size, :each_with_index, [1,2,3].select)
-
- it "returns a new Enumerator when no block is given" do
- enum1 = [1,2,3].select
- enum2 = enum1.each_with_index
- enum2.should be_an_instance_of(Enumerator)
- enum1.should_not === enum2
- end
-
- it "raises an ArgumentError if passed extra arguments" do
- lambda do
- [1].to_enum.each_with_index(:glark)
- end.should raise_error(ArgumentError)
- end
-
- it "passes on the given block's return value" do
- arr = [1,2,3]
- arr.delete_if.with_index { |a,b| false }
- arr.should == [1,2,3]
- end
-
- it "returns the iterator's return value" do
- [1,2,3].select.with_index { |a,b| false }.should == []
- end
-end
-
-describe "Enumerator#each_with_index" do
- it "returns the correct value if chained with itself" do
- [:a].each_with_index.each_with_index.to_a.should == [[[:a,0],0]]
- [:a].each.with_index.with_index.to_a.should == [[[:a,0],0]]
- end
-end
diff --git a/spec/rubyspec/core/enumerator/each_with_object_spec.rb b/spec/rubyspec/core/enumerator/each_with_object_spec.rb
deleted file mode 100644
index ec461e2425..0000000000
--- a/spec/rubyspec/core/enumerator/each_with_object_spec.rb
+++ /dev/null
@@ -1,6 +0,0 @@
-require File.expand_path('../../../spec_helper', __FILE__)
-require File.expand_path('../../../shared/enumerator/with_object', __FILE__)
-
-describe "Enumerator#each_with_object" do
- it_behaves_like :enum_with_object, :each_with_object
-end
diff --git a/spec/rubyspec/core/enumerator/enum_for_spec.rb b/spec/rubyspec/core/enumerator/enum_for_spec.rb
deleted file mode 100644
index 43c11e5a39..0000000000
--- a/spec/rubyspec/core/enumerator/enum_for_spec.rb
+++ /dev/null
@@ -1,6 +0,0 @@
-require File.expand_path('../../../spec_helper', __FILE__)
-require File.expand_path('../../../shared/enumerator/enum_for', __FILE__)
-
-describe "Enumerator#enum_for" do
- it_behaves_like :enum_for, :enum_for
-end
diff --git a/spec/rubyspec/core/enumerator/enumerator_spec.rb b/spec/rubyspec/core/enumerator/enumerator_spec.rb
deleted file mode 100644
index 2d5213edd9..0000000000
--- a/spec/rubyspec/core/enumerator/enumerator_spec.rb
+++ /dev/null
@@ -1,7 +0,0 @@
-require File.expand_path('../../../spec_helper', __FILE__)
-
-describe "Enumerator" do
- it "includes Enumerable" do
- Enumerator.include?(Enumerable).should == true
- end
-end
diff --git a/spec/rubyspec/core/enumerator/feed_spec.rb b/spec/rubyspec/core/enumerator/feed_spec.rb
deleted file mode 100644
index 32ea77a30d..0000000000
--- a/spec/rubyspec/core/enumerator/feed_spec.rb
+++ /dev/null
@@ -1,52 +0,0 @@
-require File.expand_path('../../../spec_helper', __FILE__)
-require File.expand_path('../fixtures/common', __FILE__)
-
-describe "Enumerator#feed" do
- before :each do
- ScratchPad.record []
- @enum = EnumeratorSpecs::Feed.new.to_enum(:each)
- end
-
- it "sets the future return value of yield if called before advancing the iterator" do
- @enum.feed :a
- @enum.next
- @enum.next
- @enum.next
- ScratchPad.recorded.should == [:a, nil]
- end
-
- it "causes yield to return the value if called during iteration" do
- @enum.next
- @enum.feed :a
- @enum.next
- @enum.next
- ScratchPad.recorded.should == [:a, nil]
- end
-
- it "can be called for each iteration" do
- @enum.next
- @enum.feed :a
- @enum.next
- @enum.feed :b
- @enum.next
- ScratchPad.recorded.should == [:a, :b]
- end
-
- it "returns nil" do
- @enum.feed(:a).should be_nil
- end
-
- it "raises a TypeError if called more than once without advancing the enumerator" do
- @enum.feed :a
- @enum.next
- lambda { @enum.feed :b }.should raise_error(TypeError)
- end
-
- it "sets the return value of Yielder#yield" do
- enum = Enumerator.new { |y| ScratchPad << y.yield }
- enum.next
- enum.feed :a
- lambda { enum.next }.should raise_error(StopIteration)
- ScratchPad.recorded.should == [:a]
- end
-end
diff --git a/spec/rubyspec/core/enumerator/first_spec.rb b/spec/rubyspec/core/enumerator/first_spec.rb
deleted file mode 100644
index ba3b0df492..0000000000
--- a/spec/rubyspec/core/enumerator/first_spec.rb
+++ /dev/null
@@ -1,7 +0,0 @@
-require File.expand_path('../../../spec_helper', __FILE__)
-
-describe "Enumerator#first" do
- it "returns arrays correctly when calling #first (2376)" do
- Enumerator.new {|y| y << [42] }.first.should == [42]
- end
-end
diff --git a/spec/rubyspec/core/enumerator/fixtures/common.rb b/spec/rubyspec/core/enumerator/fixtures/common.rb
deleted file mode 100644
index e332e3195b..0000000000
--- a/spec/rubyspec/core/enumerator/fixtures/common.rb
+++ /dev/null
@@ -1,9 +0,0 @@
-module EnumeratorSpecs
- class Feed
- def each
- ScratchPad << yield
- ScratchPad << yield
- ScratchPad << yield
- end
- end
-end
diff --git a/spec/rubyspec/core/enumerator/generator/each_spec.rb b/spec/rubyspec/core/enumerator/generator/each_spec.rb
deleted file mode 100644
index 06395d0aa0..0000000000
--- a/spec/rubyspec/core/enumerator/generator/each_spec.rb
+++ /dev/null
@@ -1,40 +0,0 @@
-require File.expand_path('../../../../spec_helper', __FILE__)
-
-describe "Enumerator::Generator#each" do
- before :each do
- @generator = Enumerator::Generator.new do |y, *args|
- y << 3 << 2 << 1
- y << args unless args.empty?
- :block_returned
- end
- end
-
- it "is an enumerable" do
- @generator.should be_kind_of(Enumerable)
- end
-
- it "supports enumeration with a block" do
- r = []
- @generator.each { |v| r << v }
-
- r.should == [3, 2, 1]
- end
-
- it "raises a LocalJumpError if no block given" do
- lambda { @generator.each }.should raise_error(LocalJumpError)
- end
-
- it "returns the block returned value" do
- @generator.each {}.should equal(:block_returned)
- end
-
- it "requires multiple arguments" do
- Enumerator::Generator.instance_method(:each).arity.should < 0
- end
-
- it "appends given arguments to receiver.each" do
- yields = []
- @generator.each(:each0, :each1) { |yielded| yields << yielded }
- yields.should == [3, 2, 1, [:each0, :each1]]
- end
-end
diff --git a/spec/rubyspec/core/enumerator/generator/initialize_spec.rb b/spec/rubyspec/core/enumerator/generator/initialize_spec.rb
deleted file mode 100644
index 85b0e04354..0000000000
--- a/spec/rubyspec/core/enumerator/generator/initialize_spec.rb
+++ /dev/null
@@ -1,26 +0,0 @@
-# -*- encoding: us-ascii -*-
-
-require File.expand_path('../../../../spec_helper', __FILE__)
-
-describe "Enumerator::Generator#initialize" do
- before :each do
- @class = Enumerator::Generator
- @uninitialized = @class.allocate
- end
-
- it "is a private method" do
- @class.should have_private_instance_method(:initialize, false)
- end
-
- it "returns self when given a block" do
- @uninitialized.send(:initialize) {}.should equal(@uninitialized)
- end
-
- describe "on frozen instance" do
- it "raises a RuntimeError" do
- lambda {
- @uninitialized.freeze.send(:initialize) {}
- }.should raise_error(RuntimeError)
- end
- end
-end
diff --git a/spec/rubyspec/core/enumerator/initialize_spec.rb b/spec/rubyspec/core/enumerator/initialize_spec.rb
deleted file mode 100644
index 58f8a5e865..0000000000
--- a/spec/rubyspec/core/enumerator/initialize_spec.rb
+++ /dev/null
@@ -1,61 +0,0 @@
-# -*- encoding: us-ascii -*-
-
-require File.expand_path('../../../spec_helper', __FILE__)
-
-describe "Enumerator#initialize" do
- before :each do
- @uninitialized = Enumerator.allocate
- end
-
- it "is a private method" do
- Enumerator.should have_private_instance_method(:initialize, false)
- end
-
- it "returns self when given an object" do
- @uninitialized.send(:initialize, Object.new).should equal(@uninitialized)
- end
-
- it "returns self when given a block" do
- @uninitialized.send(:initialize) {}.should equal(@uninitialized)
- end
-
- # Maybe spec should be broken up?
- it "accepts a block" do
- @uninitialized.send(:initialize) do |yielder|
- r = yielder.yield 3
- yielder << r << 2 << 1
- end
- @uninitialized.should be_an_instance_of(Enumerator)
- r = []
- @uninitialized.each{|x| r << x; x * 2}
- r.should == [3, 6, 2, 1]
- end
-
- it "sets size to nil if size is not given" do
- @uninitialized.send(:initialize) {}.size.should be_nil
- end
-
- it "sets size to nil if the given size is nil" do
- @uninitialized.send(:initialize, nil) {}.size.should be_nil
- end
-
- it "sets size to the given size if the given size is Float::INFINITY" do
- @uninitialized.send(:initialize, Float::INFINITY) {}.size.should equal(Float::INFINITY)
- end
-
- it "sets size to the given size if the given size is a Fixnum" do
- @uninitialized.send(:initialize, 100) {}.size.should == 100
- end
-
- it "sets size to the given size if the given size is a Proc" do
- @uninitialized.send(:initialize, lambda { 200 }) {}.size.should == 200
- end
-
- describe "on frozen instance" do
- it "raises a RuntimeError" do
- lambda {
- @uninitialized.freeze.send(:initialize) {}
- }.should raise_error(RuntimeError)
- end
- end
-end
diff --git a/spec/rubyspec/core/enumerator/inject_spec.rb b/spec/rubyspec/core/enumerator/inject_spec.rb
deleted file mode 100644
index 64085a03c5..0000000000
--- a/spec/rubyspec/core/enumerator/inject_spec.rb
+++ /dev/null
@@ -1,15 +0,0 @@
-require File.expand_path('../../../shared/enumerator/each', __FILE__)
-
-describe "Enumerator#inject" do
- it_behaves_like(:enum_each, :each)
-
- it "works when chained against each_with_index" do
- passed_values = []
- [:a].each_with_index.inject(0) do |accumulator,value|
- passed_values << value
- accumulator + 1
- end.should == 1
- passed_values.should == [[:a,0]]
- end
-
-end
diff --git a/spec/rubyspec/core/enumerator/inspect_spec.rb b/spec/rubyspec/core/enumerator/inspect_spec.rb
deleted file mode 100644
index b708256247..0000000000
--- a/spec/rubyspec/core/enumerator/inspect_spec.rb
+++ /dev/null
@@ -1,17 +0,0 @@
-require File.expand_path('../../../spec_helper', __FILE__)
-
-describe "Enumerator#inspect" do
- describe "shows a representation of the Enumerator" do
- it "including receiver and method" do
- (1..3).each.inspect.should == "#<Enumerator: 1..3:each>"
- end
-
- it "including receiver and method and arguments" do
- (1..3).each_slice(2).inspect.should == "#<Enumerator: 1..3:each_slice(2)>"
- end
-
- it "including the nested Enumerator" do
- (1..3).each.each_slice(2).inspect.should == "#<Enumerator: #<Enumerator: 1..3:each>:each_slice(2)>"
- end
- end
-end
diff --git a/spec/rubyspec/core/enumerator/lazy/collect_concat_spec.rb b/spec/rubyspec/core/enumerator/lazy/collect_concat_spec.rb
deleted file mode 100644
index 8c19dcbbf9..0000000000
--- a/spec/rubyspec/core/enumerator/lazy/collect_concat_spec.rb
+++ /dev/null
@@ -1,8 +0,0 @@
-# -*- encoding: us-ascii -*-
-
-require File.expand_path('../../../../spec_helper', __FILE__)
-require File.expand_path('../shared/collect_concat', __FILE__)
-
-describe "Enumerator::Lazy#collect_concat" do
- it_behaves_like :enumerator_lazy_collect_concat, :collect_concat
-end
diff --git a/spec/rubyspec/core/enumerator/lazy/collect_spec.rb b/spec/rubyspec/core/enumerator/lazy/collect_spec.rb
deleted file mode 100644
index 764b8af36d..0000000000
--- a/spec/rubyspec/core/enumerator/lazy/collect_spec.rb
+++ /dev/null
@@ -1,8 +0,0 @@
-# -*- encoding: us-ascii -*-
-
-require File.expand_path('../../../../spec_helper', __FILE__)
-require File.expand_path('../shared/collect', __FILE__)
-
-describe "Enumerator::Lazy#collect" do
- it_behaves_like :enumerator_lazy_collect, :collect
-end
diff --git a/spec/rubyspec/core/enumerator/lazy/drop_spec.rb b/spec/rubyspec/core/enumerator/lazy/drop_spec.rb
deleted file mode 100644
index eb65bb246b..0000000000
--- a/spec/rubyspec/core/enumerator/lazy/drop_spec.rb
+++ /dev/null
@@ -1,52 +0,0 @@
-# -*- encoding: us-ascii -*-
-
-require File.expand_path('../../../../spec_helper', __FILE__)
-require File.expand_path('../fixtures/classes', __FILE__)
-
-describe "Enumerator::Lazy#drop" do
- before :each do
- @yieldsmixed = EnumeratorLazySpecs::YieldsMixed.new.to_enum.lazy
- @eventsmixed = EnumeratorLazySpecs::EventsMixed.new.to_enum.lazy
- ScratchPad.record []
- end
-
- after :each do
- ScratchPad.clear
- end
-
- it "returns a new instance of Enumerator::Lazy" do
- ret = @yieldsmixed.drop(1)
- ret.should be_an_instance_of(Enumerator::Lazy)
- ret.should_not equal(@yieldsmixed)
- end
-
- it "sets difference of given count with old size to new size" do
- Enumerator::Lazy.new(Object.new, 100) {}.drop(20).size.should == 80
- Enumerator::Lazy.new(Object.new, 100) {}.drop(200).size.should == 0
- end
-
- describe "when the returned lazy enumerator is evaluated by Enumerable#first" do
- it "stops after specified times" do
- (0..Float::INFINITY).lazy.drop(2).first(2).should == [2, 3]
-
- @eventsmixed.drop(0).first(1)
- ScratchPad.recorded.should == [:before_yield]
- end
- end
-
- describe "on a nested Lazy" do
- it "sets difference of given count with old size to new size" do
- Enumerator::Lazy.new(Object.new, 100) {}.drop(20).drop(50).size.should == 30
- Enumerator::Lazy.new(Object.new, 100) {}.drop(50).drop(20).size.should == 30
- end
-
- describe "when the returned lazy enumerator is evaluated by Enumerable#first" do
- it "stops after specified times" do
- (0..Float::INFINITY).lazy.drop(2).drop(2).first(2).should == [4, 5]
-
- @eventsmixed.drop(0).drop(0).first(1)
- ScratchPad.recorded.should == [:before_yield]
- end
- end
- end
-end
diff --git a/spec/rubyspec/core/enumerator/lazy/drop_while_spec.rb b/spec/rubyspec/core/enumerator/lazy/drop_while_spec.rb
deleted file mode 100644
index a08644a20c..0000000000
--- a/spec/rubyspec/core/enumerator/lazy/drop_while_spec.rb
+++ /dev/null
@@ -1,60 +0,0 @@
-# -*- encoding: us-ascii -*-
-
-require File.expand_path('../../../../spec_helper', __FILE__)
-require File.expand_path('../fixtures/classes', __FILE__)
-
-describe "Enumerator::Lazy#drop_while" do
- before :each do
- @yieldsmixed = EnumeratorLazySpecs::YieldsMixed.new.to_enum.lazy
- @eventsmixed = EnumeratorLazySpecs::EventsMixed.new.to_enum.lazy
- ScratchPad.record []
- end
-
- after :each do
- ScratchPad.clear
- end
-
- it "returns a new instance of Enumerator::Lazy" do
- ret = @yieldsmixed.drop_while {}
- ret.should be_an_instance_of(Enumerator::Lazy)
- ret.should_not equal(@yieldsmixed)
- end
-
- it "sets #size to nil" do
- Enumerator::Lazy.new(Object.new, 100) {}.drop_while { |v| v }.size.should == nil
- end
-
- describe "when the returned lazy enumerator is evaluated by Enumerable#first" do
- it "stops after specified times" do
- (0..Float::INFINITY).lazy.drop_while { |n| n < 5 }.first(2).should == [5, 6]
-
- @eventsmixed.drop_while { false }.first(1)
- ScratchPad.recorded.should == [:before_yield]
- end
- end
-
- it "calls the block with initial values when yield with multiple arguments" do
- yields = []
- @yieldsmixed.drop_while { |v| yields << v; true }.force
- yields.should == EnumeratorLazySpecs::YieldsMixed.initial_yields
- end
-
- it "raises an ArgumentError when not given a block" do
- lambda { @yieldsmixed.drop_while }.should raise_error(ArgumentError)
- end
-
- describe "on a nested Lazy" do
- it "sets #size to nil" do
- Enumerator::Lazy.new(Object.new, 100) {}.take(20).drop_while { |v| v }.size.should == nil
- end
-
- describe "when the returned lazy enumerator is evaluated by Enumerable#first" do
- it "stops after specified times" do
- (0..Float::INFINITY).lazy.drop_while { |n| n < 5 }.drop_while { |n| n.odd? }.first(2).should == [6, 7]
-
- @eventsmixed.drop_while { false }.drop_while { false }.first(1)
- ScratchPad.recorded.should == [:before_yield]
- end
- end
- end
-end
diff --git a/spec/rubyspec/core/enumerator/lazy/enum_for_spec.rb b/spec/rubyspec/core/enumerator/lazy/enum_for_spec.rb
deleted file mode 100644
index b2ef2c881e..0000000000
--- a/spec/rubyspec/core/enumerator/lazy/enum_for_spec.rb
+++ /dev/null
@@ -1,8 +0,0 @@
-# -*- encoding: us-ascii -*-
-
-require File.expand_path('../../../../spec_helper', __FILE__)
-require File.expand_path('../shared/to_enum', __FILE__)
-
-describe "Enumerator::Lazy#enum_for" do
- it_behaves_like :enumerator_lazy_to_enum, :enum_for
-end
diff --git a/spec/rubyspec/core/enumerator/lazy/find_all_spec.rb b/spec/rubyspec/core/enumerator/lazy/find_all_spec.rb
deleted file mode 100644
index ab2e69c857..0000000000
--- a/spec/rubyspec/core/enumerator/lazy/find_all_spec.rb
+++ /dev/null
@@ -1,8 +0,0 @@
-# -*- encoding: us-ascii -*-
-
-require File.expand_path('../../../../spec_helper', __FILE__)
-require File.expand_path('../shared/select', __FILE__)
-
-describe "Enumerator::Lazy#find_all" do
- it_behaves_like :enumerator_lazy_select, :find_all
-end
diff --git a/spec/rubyspec/core/enumerator/lazy/fixtures/classes.rb b/spec/rubyspec/core/enumerator/lazy/fixtures/classes.rb
deleted file mode 100644
index e35592ba1c..0000000000
--- a/spec/rubyspec/core/enumerator/lazy/fixtures/classes.rb
+++ /dev/null
@@ -1,54 +0,0 @@
-# -*- encoding: us-ascii -*-
-
-module EnumeratorLazySpecs
- class SpecificError < Exception; end
-
- class YieldsMixed
- def self.initial_yields
- [nil, 0, 0, 0, 0, nil, :default_arg, [], [], [0], [0, 1], [0, 1, 2]]
- end
-
- def self.gathered_yields
- [nil, 0, [0, 1], [0, 1, 2], [0, 1, 2], nil, :default_arg, [], [], [0], [0, 1], [0, 1, 2]]
- end
-
- def self.gathered_non_array_yields
- [nil, 0, nil, :default_arg]
- end
-
- def self.gathered_yields_with_args(arg, *args)
- [nil, 0, [0, 1], [0, 1, 2], [0, 1, 2], nil, arg, args, [], [0], [0, 1], [0, 1, 2]]
- end
-
- def each(arg=:default_arg, *args)
- yield
- yield 0
- yield 0, 1
- yield 0, 1, 2
- yield(*[0, 1, 2])
- yield nil
- yield arg
- yield args
- yield []
- yield [0]
- yield [0, 1]
- yield [0, 1, 2]
- end
- end
-
- class EventsMixed
- def each
- ScratchPad << :before_yield
-
- yield 0
-
- ScratchPad << :after_yield
-
- raise SpecificError
-
- ScratchPad << :after_error
-
- :should_not_reach_here
- end
- end
-end
diff --git a/spec/rubyspec/core/enumerator/lazy/flat_map_spec.rb b/spec/rubyspec/core/enumerator/lazy/flat_map_spec.rb
deleted file mode 100644
index b7fba5e81c..0000000000
--- a/spec/rubyspec/core/enumerator/lazy/flat_map_spec.rb
+++ /dev/null
@@ -1,8 +0,0 @@
-# -*- encoding: us-ascii -*-
-
-require File.expand_path('../../../../spec_helper', __FILE__)
-require File.expand_path('../shared/collect_concat', __FILE__)
-
-describe "Enumerator::Lazy#flat_map" do
- it_behaves_like :enumerator_lazy_collect_concat, :flat_map
-end
diff --git a/spec/rubyspec/core/enumerator/lazy/force_spec.rb b/spec/rubyspec/core/enumerator/lazy/force_spec.rb
deleted file mode 100644
index 03ff9a0fb6..0000000000
--- a/spec/rubyspec/core/enumerator/lazy/force_spec.rb
+++ /dev/null
@@ -1,30 +0,0 @@
-# -*- encoding: us-ascii -*-
-
-require File.expand_path('../../../../spec_helper', __FILE__)
-require File.expand_path('../fixtures/classes', __FILE__)
-
-describe "Enumerator::Lazy#force" do
- before :each do
- @yieldsmixed = EnumeratorLazySpecs::YieldsMixed.new.to_enum.lazy
- @eventsmixed = EnumeratorLazySpecs::EventsMixed.new.to_enum.lazy
- ScratchPad.record []
- end
-
- after :each do
- ScratchPad.clear
- end
-
- it "passes given arguments to receiver.each" do
- @yieldsmixed.force(:arg1, :arg2, :arg3).should ==
- EnumeratorLazySpecs::YieldsMixed.gathered_yields_with_args(:arg1, :arg2, :arg3)
- end
-
- describe "on a nested Lazy" do
- it "calls all block and returns an Array" do
- (0..Float::INFINITY).lazy.map(&:succ).take(2).force.should == [1, 2]
-
- @eventsmixed.take(1).map(&:succ).force.should == [1]
- ScratchPad.recorded == [:after_yields]
- end
- end
-end
diff --git a/spec/rubyspec/core/enumerator/lazy/grep_spec.rb b/spec/rubyspec/core/enumerator/lazy/grep_spec.rb
deleted file mode 100644
index 372be80d61..0000000000
--- a/spec/rubyspec/core/enumerator/lazy/grep_spec.rb
+++ /dev/null
@@ -1,82 +0,0 @@
-# -*- encoding: us-ascii -*-
-
-require File.expand_path('../../../../spec_helper', __FILE__)
-require File.expand_path('../fixtures/classes', __FILE__)
-
-describe "Enumerator::Lazy#grep" do
- before :each do
- @yieldsmixed = EnumeratorLazySpecs::YieldsMixed.new.to_enum.lazy
- @eventsmixed = EnumeratorLazySpecs::EventsMixed.new.to_enum.lazy
- ScratchPad.record []
- end
-
- after :each do
- ScratchPad.clear
- end
-
- it "requires an argument" do
- Enumerator::Lazy.instance_method(:grep).arity.should == 1
- end
-
- it "returns a new instance of Enumerator::Lazy" do
- ret = @yieldsmixed.grep(Object) {}
- ret.should be_an_instance_of(Enumerator::Lazy)
- ret.should_not equal(@yieldsmixed)
-
- ret = @yieldsmixed.grep(Object)
- ret.should be_an_instance_of(Enumerator::Lazy)
- ret.should_not equal(@yieldsmixed)
- end
-
- it "sets #size to nil" do
- Enumerator::Lazy.new(Object.new, 100) {}.grep(Object) {}.size.should == nil
- Enumerator::Lazy.new(Object.new, 100) {}.grep(Object).size.should == nil
- end
-
- describe "when the returned lazy enumerator is evaluated by Enumerable#first" do
- it "stops after specified times when not given a block" do
- (0..Float::INFINITY).lazy.grep(Integer).first(3).should == [0, 1, 2]
-
- @eventsmixed.grep(BasicObject).first(1)
- ScratchPad.recorded.should == [:before_yield]
- end
-
- it "stops after specified times when given a block" do
- (0..Float::INFINITY).lazy.grep(Integer, &:succ).first(3).should == [1, 2, 3]
-
- @eventsmixed.grep(BasicObject) {}.first(1)
- ScratchPad.recorded.should == [:before_yield]
- end
- end
-
- it "calls the block with a gathered array when yield with multiple arguments" do
- yields = []
- @yieldsmixed.grep(BasicObject) { |v| yields << v }.force
- yields.should == EnumeratorLazySpecs::YieldsMixed.gathered_yields
-
- @yieldsmixed.grep(BasicObject).force.should == yields
- end
-
- describe "on a nested Lazy" do
- it "sets #size to nil" do
- Enumerator::Lazy.new(Object.new, 100) {}.grep(Object) {}.size.should == nil
- Enumerator::Lazy.new(Object.new, 100) {}.grep(Object).size.should == nil
- end
-
- describe "when the returned lazy enumerator is evaluated by Enumerable#first" do
- it "stops after specified times when not given a block" do
- (0..Float::INFINITY).lazy.grep(Integer).grep(Object).first(3).should == [0, 1, 2]
-
- @eventsmixed.grep(BasicObject).grep(Object).first(1)
- ScratchPad.recorded.should == [:before_yield]
- end
-
- it "stops after specified times when given a block" do
- (0..Float::INFINITY).lazy.grep(Integer) { |n| n > 3 ? n : false }.grep(Integer) { |n| n.even? ? n : false }.first(3).should == [4, false, 6]
-
- @eventsmixed.grep(BasicObject) {}.grep(Object) {}.first(1)
- ScratchPad.recorded.should == [:before_yield]
- end
- end
- end
-end
diff --git a/spec/rubyspec/core/enumerator/lazy/grep_v_spec.rb b/spec/rubyspec/core/enumerator/lazy/grep_v_spec.rb
deleted file mode 100644
index 123cbae58c..0000000000
--- a/spec/rubyspec/core/enumerator/lazy/grep_v_spec.rb
+++ /dev/null
@@ -1,86 +0,0 @@
-require File.expand_path('../../../../spec_helper', __FILE__)
-require File.expand_path('../fixtures/classes', __FILE__)
-
-ruby_version_is "2.3" do
- describe "Enumerator::Lazy#grep_v" do
- before(:each) do
- @yieldsmixed = EnumeratorLazySpecs::YieldsMixed.new.to_enum.lazy
- @eventsmixed = EnumeratorLazySpecs::EventsMixed.new.to_enum.lazy
- ScratchPad.record []
- end
-
- after(:each) do
- ScratchPad.clear
- end
-
- it "requires an argument" do
- Enumerator::Lazy.instance_method(:grep_v).arity.should == 1
- end
-
- it "returns a new instance of Enumerator::Lazy" do
- ret = @yieldsmixed.grep_v(Object) {}
- ret.should be_an_instance_of(Enumerator::Lazy)
- ret.should_not equal(@yieldsmixed)
-
- ret = @yieldsmixed.grep_v(Object)
- ret.should be_an_instance_of(Enumerator::Lazy)
- ret.should_not equal(@yieldsmixed)
- end
-
- it "sets #size to nil" do
- Enumerator::Lazy.new(Object.new, 100) {}.grep_v(Object) {}.size.should == nil
- Enumerator::Lazy.new(Object.new, 100) {}.grep_v(Object).size.should == nil
- end
-
- describe "when the returned lazy enumerator is evaluated by Enumerable#first" do
- it "stops after specified times when not given a block" do
- (0..Float::INFINITY).lazy.grep_v(3..5).first(3).should == [0, 1, 2]
-
- @eventsmixed.grep_v(Symbol).first(1)
- ScratchPad.recorded.should == [:before_yield]
- end
-
- it "stops after specified times when given a block" do
- (0..Float::INFINITY).lazy.grep_v(4..8, &:succ).first(3).should == [1, 2, 3]
-
- @eventsmixed.grep_v(Symbol) {}.first(1)
- ScratchPad.recorded.should == [:before_yield]
- end
- end
-
- it "calls the block with a gathered array when yield with multiple arguments" do
- yields = []
- @yieldsmixed.grep_v(Array) { |v| yields << v }.force
- yields.should == EnumeratorLazySpecs::YieldsMixed.gathered_non_array_yields
-
- @yieldsmixed.grep_v(Array).force.should == yields
- end
-
- describe "on a nested Lazy" do
- it "sets #size to nil" do
- Enumerator::Lazy.new(Object.new, 100) {}.grep_v(Object).grep_v(Object) {}.size.should == nil
- Enumerator::Lazy.new(Object.new, 100) {}.grep_v(Object).grep_v(Object).size.should == nil
- end
-
- describe "when the returned lazy enumerator is evaluated by Enumerable#first" do
- it "stops after specified times when not given a block" do
- (0..Float::INFINITY).lazy.grep_v(3..5).grep_v(6..10).first(3).should == [0, 1, 2]
-
- @eventsmixed.grep_v(Symbol).grep_v(String).first(1)
- ScratchPad.recorded.should == [:before_yield]
- end
-
- it "stops after specified times when given a block" do
- (0..Float::INFINITY).lazy
- .grep_v(1..2) { |n| n > 3 ? n : false }
- .grep_v(false) { |n| n.even? ? n : false }
- .first(3)
- .should == [4, false, 6]
-
- @eventsmixed.grep_v(Symbol) {}.grep_v(String) {}.first(1)
- ScratchPad.recorded.should == [:before_yield]
- end
- end
- end
- end
-end
diff --git a/spec/rubyspec/core/enumerator/lazy/initialize_spec.rb b/spec/rubyspec/core/enumerator/lazy/initialize_spec.rb
deleted file mode 100644
index 47eeafb5cf..0000000000
--- a/spec/rubyspec/core/enumerator/lazy/initialize_spec.rb
+++ /dev/null
@@ -1,63 +0,0 @@
-# -*- encoding: us-ascii -*-
-
-require File.expand_path('../../../../spec_helper', __FILE__)
-
-describe "Enumerator::Lazy#initialize" do
- before :each do
- @receiver = receiver = Object.new
-
- def receiver.each
- yield 0
- yield 1
- yield 2
- end
-
- @uninitialized = Enumerator::Lazy.allocate
- end
-
- it "is a private method" do
- Enumerator::Lazy.should have_private_instance_method(:initialize, false)
- end
-
- it "returns self" do
- @uninitialized.send(:initialize, @receiver) {}.should equal(@uninitialized)
- end
-
- describe "when the returned lazy enumerator is evaluated by Enumerable#first" do
- it "stops after specified times" do
- @uninitialized.send(:initialize, @receiver) do |yielder, *values|
- yielder.<<(*values)
- end.first(2).should == [0, 1]
- end
- end
-
- it "sets #size to nil if not given a size" do
- @uninitialized.send(:initialize, @receiver) {}.size.should be_nil
- end
-
- it "sets #size to nil if given size is nil" do
- @uninitialized.send(:initialize, @receiver, nil) {}.size.should be_nil
- end
-
- it "sets given size to own size if the given size is Float::INFINITY" do
- @uninitialized.send(:initialize, @receiver, Float::INFINITY) {}.size.should equal(Float::INFINITY)
- end
-
- it "sets given size to own size if the given size is a Fixnum" do
- @uninitialized.send(:initialize, @receiver, 100) {}.size.should == 100
- end
-
- it "sets given size to own size if the given size is a Proc" do
- @uninitialized.send(:initialize, @receiver, lambda { 200 }) {}.size.should == 200
- end
-
- it "raises an ArgumentError when block is not given" do
- lambda { @uninitialized.send :initialize, @receiver }.should raise_error(ArgumentError)
- end
-
- describe "on frozen instance" do
- it "raises a RuntimeError" do
- lambda { @uninitialized.freeze.send(:initialize, @receiver) {} }.should raise_error(RuntimeError)
- end
- end
-end
diff --git a/spec/rubyspec/core/enumerator/lazy/lazy_spec.rb b/spec/rubyspec/core/enumerator/lazy/lazy_spec.rb
deleted file mode 100644
index a82a1af271..0000000000
--- a/spec/rubyspec/core/enumerator/lazy/lazy_spec.rb
+++ /dev/null
@@ -1,16 +0,0 @@
-# -*- encoding: us-ascii -*-
-
-require File.expand_path('../../../../spec_helper', __FILE__)
-
-describe "Enumerator::Lazy" do
- it "is a subclass of Enumerator" do
- Enumerator::Lazy.superclass.should equal(Enumerator)
- end
-end
-
-describe "Enumerator::Lazy#lazy" do
- it "returns self" do
- lazy = (1..3).to_enum.lazy
- lazy.lazy.should equal(lazy)
- end
-end
diff --git a/spec/rubyspec/core/enumerator/lazy/map_spec.rb b/spec/rubyspec/core/enumerator/lazy/map_spec.rb
deleted file mode 100644
index 8ff2573fe5..0000000000
--- a/spec/rubyspec/core/enumerator/lazy/map_spec.rb
+++ /dev/null
@@ -1,12 +0,0 @@
-# -*- encoding: us-ascii -*-
-
-require File.expand_path('../../../../spec_helper', __FILE__)
-require File.expand_path('../shared/collect', __FILE__)
-
-describe "Enumerator::Lazy#map" do
- it_behaves_like :enumerator_lazy_collect, :map
-
- it "doesn't unwrap Arrays" do
- Enumerator.new {|y| y.yield([1])}.lazy.to_a.should == [[1]]
- end
-end
diff --git a/spec/rubyspec/core/enumerator/lazy/reject_spec.rb b/spec/rubyspec/core/enumerator/lazy/reject_spec.rb
deleted file mode 100644
index 317e927f02..0000000000
--- a/spec/rubyspec/core/enumerator/lazy/reject_spec.rb
+++ /dev/null
@@ -1,60 +0,0 @@
-# -*- encoding: us-ascii -*-
-
-require File.expand_path('../../../../spec_helper', __FILE__)
-require File.expand_path('../fixtures/classes', __FILE__)
-
-describe "Enumerator::Lazy#reject" do
- before :each do
- @yieldsmixed = EnumeratorLazySpecs::YieldsMixed.new.to_enum.lazy
- @eventsmixed = EnumeratorLazySpecs::EventsMixed.new.to_enum.lazy
- ScratchPad.record []
- end
-
- after :each do
- ScratchPad.clear
- end
-
- it "returns a new instance of Enumerator::Lazy" do
- ret = @yieldsmixed.reject {}
- ret.should be_an_instance_of(Enumerator::Lazy)
- ret.should_not equal(@yieldsmixed)
- end
-
- it "sets #size to nil" do
- Enumerator::Lazy.new(Object.new, 100) {}.reject {}.size.should == nil
- end
-
- describe "when the returned lazy enumerator is evaluated by Enumerable#first" do
- it "stops after specified times" do
- (0..Float::INFINITY).lazy.reject(&:even?).first(3).should == [1, 3, 5]
-
- @eventsmixed.reject { false }.first(1)
- ScratchPad.recorded.should == [:before_yield]
- end
- end
-
- it "calls the block with a gathered array when yield with multiple arguments" do
- yields = []
- @yieldsmixed.reject { |v| yields << v }.force
- yields.should == EnumeratorLazySpecs::YieldsMixed.gathered_yields
- end
-
- it "raises an ArgumentError when not given a block" do
- lambda { @yieldsmixed.reject }.should raise_error(ArgumentError)
- end
-
- describe "on a nested Lazy" do
- it "sets #size to nil" do
- Enumerator::Lazy.new(Object.new, 100) {}.take(20).reject {}.size.should == nil
- end
-
- describe "when the returned lazy enumerator is evaluated by Enumerable#first" do
- it "stops after specified times" do
- (0..Float::INFINITY).lazy.reject { |n| n < 4 }.reject(&:even?).first(3).should == [5, 7, 9]
-
- @eventsmixed.reject { false }.reject { false }.first(1)
- ScratchPad.recorded.should == [:before_yield]
- end
- end
- end
-end
diff --git a/spec/rubyspec/core/enumerator/lazy/select_spec.rb b/spec/rubyspec/core/enumerator/lazy/select_spec.rb
deleted file mode 100644
index ba5823c7ad..0000000000
--- a/spec/rubyspec/core/enumerator/lazy/select_spec.rb
+++ /dev/null
@@ -1,8 +0,0 @@
-# -*- encoding: us-ascii -*-
-
-require File.expand_path('../../../../spec_helper', __FILE__)
-require File.expand_path('../shared/select', __FILE__)
-
-describe "Enumerator::Lazy#select" do
- it_behaves_like :enumerator_lazy_select, :select
-end
diff --git a/spec/rubyspec/core/enumerator/lazy/shared/collect.rb b/spec/rubyspec/core/enumerator/lazy/shared/collect.rb
deleted file mode 100644
index c892784bc2..0000000000
--- a/spec/rubyspec/core/enumerator/lazy/shared/collect.rb
+++ /dev/null
@@ -1,56 +0,0 @@
-# -*- encoding: us-ascii -*-
-
-require File.expand_path('../../../../../spec_helper', __FILE__)
-require File.expand_path('../../fixtures/classes', __FILE__)
-
-describe :enumerator_lazy_collect, shared: true do
- before :each do
- @yieldsmixed = EnumeratorLazySpecs::YieldsMixed.new.to_enum.lazy
- @eventsmixed = EnumeratorLazySpecs::EventsMixed.new.to_enum.lazy
- ScratchPad.record []
- end
-
- after :each do
- ScratchPad.clear
- end
-
- it "returns a new instance of Enumerator::Lazy" do
- ret = @yieldsmixed.send(@method) {}
- ret.should be_an_instance_of(Enumerator::Lazy)
- ret.should_not equal(@yieldsmixed)
- end
-
- it "keeps size" do
- Enumerator::Lazy.new(Object.new, 100) {}.send(@method) {}.size.should == 100
- end
-
- describe "when the returned lazy enumerator is evaluated by Enumerable#first" do
- it "stops after specified times" do
- (0..Float::INFINITY).lazy.send(@method, &:succ).first(3).should == [1, 2, 3]
-
- @eventsmixed.send(@method) {}.first(1)
- ScratchPad.recorded.should == [:before_yield]
- end
- end
-
- it "calls the block with initial values when yield with multiple arguments" do
- yields = []
- @yieldsmixed.send(@method) { |v| yields << v }.force
- yields.should == EnumeratorLazySpecs::YieldsMixed.initial_yields
- end
-
- describe "on a nested Lazy" do
- it "keeps size" do
- Enumerator::Lazy.new(Object.new, 100) {}.send(@method) {}.send(@method) {}.size.should == 100
- end
-
- describe "when the returned lazy enumerator is evaluated by Enumerable#first" do
- it "stops after specified times" do
- (0..Float::INFINITY).lazy.send(@method, &:succ).send(@method, &:succ).first(3).should == [2, 3, 4]
-
- @eventsmixed.send(@method) {}.send(@method) {}.first(1)
- ScratchPad.recorded.should == [:before_yield]
- end
- end
- end
-end
diff --git a/spec/rubyspec/core/enumerator/lazy/shared/collect_concat.rb b/spec/rubyspec/core/enumerator/lazy/shared/collect_concat.rb
deleted file mode 100644
index 69bc10c1a4..0000000000
--- a/spec/rubyspec/core/enumerator/lazy/shared/collect_concat.rb
+++ /dev/null
@@ -1,72 +0,0 @@
-# -*- encoding: us-ascii -*-
-
-require File.expand_path('../../../../../spec_helper', __FILE__)
-require File.expand_path('../../fixtures/classes', __FILE__)
-
-describe :enumerator_lazy_collect_concat, shared: true do
- before :each do
- @yieldsmixed = EnumeratorLazySpecs::YieldsMixed.new.to_enum.lazy
- @eventsmixed = EnumeratorLazySpecs::EventsMixed.new.to_enum.lazy
- ScratchPad.record []
- end
-
- after :each do
- ScratchPad.clear
- end
-
- it "returns a new instance of Enumerator::Lazy" do
- ret = @yieldsmixed.send(@method) {}
- ret.should be_an_instance_of(Enumerator::Lazy)
- ret.should_not equal(@yieldsmixed)
- end
-
- it "sets #size to nil" do
- Enumerator::Lazy.new(Object.new, 100) {}.send(@method) { true }.size.should == nil
- end
-
- describe "when the returned lazy enumerator is evaluated by Enumerable#first" do
- it "stops after specified times" do
- (0..Float::INFINITY).lazy.send(@method) { |n| (n * 10).to_s }.first(6).should == %w[0 10 20 30 40 50]
-
- @eventsmixed.send(@method) {}.first(1)
- ScratchPad.recorded.should == [:before_yield]
- end
-
- it "flattens elements when the given block returned an array or responding to .each and .force" do
- (0..Float::INFINITY).lazy.send(@method) { |n| (n * 10).to_s.chars }.first(6).should == %w[0 1 0 2 0 3]
- (0..Float::INFINITY).lazy.send(@method) { |n| (n * 10).to_s.each_char }.first(6).all? { |o| o.instance_of? Enumerator }.should be_true
- (0..Float::INFINITY).lazy.send(@method) { |n| (n * 10).to_s.each_char.lazy }.first(6).should == %w[0 1 0 2 0 3]
- end
- end
-
- it "calls the block with initial values when yield with multiple arguments" do
- yields = []
- @yieldsmixed.send(@method) { |v| yields << v }.force
- yields.should == EnumeratorLazySpecs::YieldsMixed.initial_yields
- end
-
- it "raises an ArgumentError when not given a block" do
- lambda { @yieldsmixed.send(@method) }.should raise_error(ArgumentError)
- end
-
- describe "on a nested Lazy" do
- it "sets #size to nil" do
- Enumerator::Lazy.new(Object.new, 100) {}.take(50) {}.send(@method) {}.size.should == nil
- end
-
- describe "when the returned lazy enumerator is evaluated by Enumerable#first" do
- it "stops after specified times" do
- (0..Float::INFINITY).lazy.map {|n| n * 10 }.send(@method) { |n| n.to_s }.first(6).should == %w[0 10 20 30 40 50]
-
- @eventsmixed.send(@method) {}.send(@method) {}.first(1)
- ScratchPad.recorded.should == [:before_yield]
- end
-
- it "flattens elements when the given block returned an array or responding to .each and .force" do
- (0..Float::INFINITY).lazy.map {|n| n * 10 }.send(@method) { |n| n.to_s.chars }.first(6).should == %w[0 1 0 2 0 3]
- (0..Float::INFINITY).lazy.map {|n| n * 10 }.send(@method) { |n| n.to_s.each_char }.first(6).all? { |o| o.instance_of? Enumerator }.should be_true
- (0..Float::INFINITY).lazy.map {|n| n * 10 }.send(@method) { |n| n.to_s.each_char.lazy }.first(6).should == %w[0 1 0 2 0 3]
- end
- end
- end
-end
diff --git a/spec/rubyspec/core/enumerator/lazy/shared/select.rb b/spec/rubyspec/core/enumerator/lazy/shared/select.rb
deleted file mode 100644
index 546256360e..0000000000
--- a/spec/rubyspec/core/enumerator/lazy/shared/select.rb
+++ /dev/null
@@ -1,60 +0,0 @@
-# -*- encoding: us-ascii -*-
-
-require File.expand_path('../../../../../spec_helper', __FILE__)
-require File.expand_path('../../fixtures/classes', __FILE__)
-
-describe :enumerator_lazy_select, shared: true do
- before :each do
- @yieldsmixed = EnumeratorLazySpecs::YieldsMixed.new.to_enum.lazy
- @eventsmixed = EnumeratorLazySpecs::EventsMixed.new.to_enum.lazy
- ScratchPad.record []
- end
-
- after :each do
- ScratchPad.clear
- end
-
- it "returns a new instance of Enumerator::Lazy" do
- ret = @yieldsmixed.send(@method) {}
- ret.should be_an_instance_of(Enumerator::Lazy)
- ret.should_not equal(@yieldsmixed)
- end
-
- it "sets #size to nil" do
- Enumerator::Lazy.new(Object.new, 100) {}.send(@method) { true }.size.should == nil
- end
-
- describe "when the returned lazy enumerator is evaluated by Enumerable#first" do
- it "stops after specified times" do
- (0..Float::INFINITY).lazy.send(@method, &:even?).first(3).should == [0, 2, 4]
-
- @eventsmixed.send(@method) { true }.first(1)
- ScratchPad.recorded.should == [:before_yield]
- end
- end
-
- it "calls the block with a gathered array when yield with multiple arguments" do
- yields = []
- @yieldsmixed.send(@method) { |v| yields << v }.force
- yields.should == EnumeratorLazySpecs::YieldsMixed.gathered_yields
- end
-
- it "raises an ArgumentError when not given a block" do
- lambda { @yieldsmixed.send(@method) }.should raise_error(ArgumentError)
- end
-
- describe "on a nested Lazy" do
- it "sets #size to nil" do
- Enumerator::Lazy.new(Object.new, 100) {}.take(50) {}.send(@method) { true }.size.should == nil
- end
-
- describe "when the returned lazy enumerator is evaluated by Enumerable#first" do
- it "stops after specified times" do
- (0..Float::INFINITY).lazy.send(@method) { |n| n > 5 }.send(@method, &:even?).first(3).should == [6, 8, 10]
-
- @eventsmixed.send(@method) { true }.send(@method) { true }.first(1)
- ScratchPad.recorded.should == [:before_yield]
- end
- end
- end
-end
diff --git a/spec/rubyspec/core/enumerator/lazy/shared/to_enum.rb b/spec/rubyspec/core/enumerator/lazy/shared/to_enum.rb
deleted file mode 100644
index 5e6935b45a..0000000000
--- a/spec/rubyspec/core/enumerator/lazy/shared/to_enum.rb
+++ /dev/null
@@ -1,50 +0,0 @@
-# -*- encoding: us-ascii -*-
-
-require File.expand_path('../../../../../spec_helper', __FILE__)
-
-describe :enumerator_lazy_to_enum, shared: true do
- before :each do
- @infinite = (0..Float::INFINITY).lazy
- end
-
- it "requires multiple arguments" do
- Enumerator::Lazy.instance_method(@method).arity.should < 0
- end
-
- it "returns a new instance of Enumerator::Lazy" do
- ret = @infinite.send @method
- ret.should be_an_instance_of(Enumerator::Lazy)
- ret.should_not equal(@infinite)
- end
-
- it "sets #size to nil when not given a block" do
- Enumerator::Lazy.new(Object.new, 100) {}.send(@method).size.should == nil
- end
-
- it "sets given block to size when given a block" do
- Enumerator::Lazy.new(Object.new, 100) {}.send(@method) { 30 }.size.should == 30
- end
-
- it "generates a lazy enumerator from the given name" do
- @infinite.send(@method, :with_index, 10).first(3).should == [[0, 10], [1, 11], [2, 12]]
- end
-
- it "passes given arguments to wrapped method" do
- @infinite.send(@method, :each_slice, 2).map { |assoc| assoc.first * assoc.last }.first(4).should == [0, 6, 20, 42]
- end
-
- it "used by some parent's methods though returning Lazy" do
- { each_with_index: [],
- with_index: [],
- cycle: [1],
- each_with_object: [Object.new],
- with_object: [Object.new],
- each_slice: [2],
- each_entry: [],
- each_cons: [2]
- }.each_pair do |method, args|
- @infinite.method(method).owner.should_not equal(Enumerator::Lazy)
- @infinite.send(method, *args).should be_an_instance_of(Enumerator::Lazy)
- end
- end
-end
diff --git a/spec/rubyspec/core/enumerator/lazy/take_spec.rb b/spec/rubyspec/core/enumerator/lazy/take_spec.rb
deleted file mode 100644
index 5ef732237d..0000000000
--- a/spec/rubyspec/core/enumerator/lazy/take_spec.rb
+++ /dev/null
@@ -1,66 +0,0 @@
-# -*- encoding: us-ascii -*-
-
-require File.expand_path('../../../../spec_helper', __FILE__)
-require File.expand_path('../fixtures/classes', __FILE__)
-
-describe "Enumerator::Lazy#take" do
- before :each do
- @yieldsmixed = EnumeratorLazySpecs::YieldsMixed.new.to_enum.lazy
- @eventsmixed = EnumeratorLazySpecs::EventsMixed.new.to_enum.lazy
- ScratchPad.record []
- end
-
- after :each do
- ScratchPad.clear
- end
-
- it "returns a new instance of Enumerator::Lazy" do
- ret = @yieldsmixed.take(1)
- ret.should be_an_instance_of(Enumerator::Lazy)
- ret.should_not equal(@yieldsmixed)
- end
-
- it "sets given count to size if the given count is less than old size" do
- Enumerator::Lazy.new(Object.new, 100) {}.take(20).size.should == 20
- Enumerator::Lazy.new(Object.new, 100) {}.take(200).size.should == 100
- end
-
- it "sets given count to size if the old size is Infinity" do
- loop.lazy.take(20).size.should == 20
- end
-
- describe "when the returned lazy enumerator is evaluated by .force" do
- it "stops after specified times" do
- (0..Float::INFINITY).lazy.take(2).force.should == [0, 1]
-
- @eventsmixed.take(1).force
- ScratchPad.recorded.should == [:before_yield]
- end
-
- it "stops without iterations if the given argument is 0" do
- @eventsmixed.take(0).force
- ScratchPad.recorded.should == []
- end
- end
-
- describe "on a nested Lazy" do
- it "sets given count to size if the given count is less than old size" do
- Enumerator::Lazy.new(Object.new, 100) {}.take(20).take(50).size.should == 20
- Enumerator::Lazy.new(Object.new, 100) {}.take(50).take(20).size.should == 20
- end
-
- describe "when the returned lazy enumerator is evaluated by .force" do
- it "stops after specified times" do
- (0..Float::INFINITY).lazy.map(&:succ).take(2).force.should == [1, 2]
-
- @eventsmixed.take(10).take(1).force
- ScratchPad.recorded.should == [:before_yield]
- end
-
- it "stops without iterations if the given argument is 0" do
- @eventsmixed.take(10).take(0).force
- ScratchPad.recorded.should == []
- end
- end
- end
-end
diff --git a/spec/rubyspec/core/enumerator/lazy/take_while_spec.rb b/spec/rubyspec/core/enumerator/lazy/take_while_spec.rb
deleted file mode 100644
index 8647dfcaf0..0000000000
--- a/spec/rubyspec/core/enumerator/lazy/take_while_spec.rb
+++ /dev/null
@@ -1,60 +0,0 @@
-# -*- encoding: us-ascii -*-
-
-require File.expand_path('../../../../spec_helper', __FILE__)
-require File.expand_path('../fixtures/classes', __FILE__)
-
-describe "Enumerator::Lazy#take_while" do
- before :each do
- @yieldsmixed = EnumeratorLazySpecs::YieldsMixed.new.to_enum.lazy
- @eventsmixed = EnumeratorLazySpecs::EventsMixed.new.to_enum.lazy
- ScratchPad.record []
- end
-
- after :each do
- ScratchPad.clear
- end
-
- it "returns a new instance of Enumerator::Lazy" do
- ret = @yieldsmixed.take_while {}
- ret.should be_an_instance_of(Enumerator::Lazy)
- ret.should_not equal(@yieldsmixed)
- end
-
- it "sets #size to nil" do
- Enumerator::Lazy.new(Object.new, 100) {}.take_while { true }.size.should == nil
- end
-
- describe "when the returned lazy enumerator is evaluated by .force" do
- it "stops after specified times" do
- (0..Float::INFINITY).lazy.take_while { |n| n < 3 }.force.should == [0, 1, 2]
-
- @eventsmixed.take_while { false }.force
- ScratchPad.recorded.should == [:before_yield]
- end
- end
-
- it "calls the block with initial values when yield with multiple arguments" do
- yields = []
- @yieldsmixed.take_while { |v| yields << v; true }.force
- yields.should == EnumeratorLazySpecs::YieldsMixed.initial_yields
- end
-
- it "raises an ArgumentError when not given a block" do
- lambda { @yieldsmixed.take_while }.should raise_error(ArgumentError)
- end
-
- describe "on a nested Lazy" do
- it "sets #size to nil" do
- Enumerator::Lazy.new(Object.new, 100) {}.take(20).take_while { true }.size.should == nil
- end
-
- describe "when the returned lazy enumerator is evaluated by .force" do
- it "stops after specified times" do
- (0..Float::INFINITY).lazy.take_while { |n| n < 3 }.take_while(&:even?).force.should == [0]
-
- @eventsmixed.take_while { true }.take_while { false }.force
- ScratchPad.recorded.should == [:before_yield]
- end
- end
- end
-end
diff --git a/spec/rubyspec/core/enumerator/lazy/to_enum_spec.rb b/spec/rubyspec/core/enumerator/lazy/to_enum_spec.rb
deleted file mode 100644
index e0966037ab..0000000000
--- a/spec/rubyspec/core/enumerator/lazy/to_enum_spec.rb
+++ /dev/null
@@ -1,8 +0,0 @@
-# -*- encoding: us-ascii -*-
-
-require File.expand_path('../../../../spec_helper', __FILE__)
-require File.expand_path('../shared/to_enum', __FILE__)
-
-describe "Enumerator::Lazy#to_enum" do
- it_behaves_like :enumerator_lazy_to_enum, :to_enum
-end
diff --git a/spec/rubyspec/core/enumerator/lazy/uniq_spec.rb b/spec/rubyspec/core/enumerator/lazy/uniq_spec.rb
deleted file mode 100644
index 6220c7ba34..0000000000
--- a/spec/rubyspec/core/enumerator/lazy/uniq_spec.rb
+++ /dev/null
@@ -1,39 +0,0 @@
-require File.expand_path('../../../../spec_helper', __FILE__)
-require File.expand_path('../fixtures/classes', __FILE__)
-
-ruby_version_is '2.4' do
- describe 'Enumerator::Lazy#uniq' do
- context 'when yielded with an argument' do
- before :each do
- @lazy = [0, 1, 2, 3].to_enum.lazy.uniq(&:even?)
- end
-
- it 'returns a lazy enumerator' do
- @lazy.should be_an_instance_of(Enumerator::Lazy)
- @lazy.force.should == [0, 1]
- end
-
- it 'sets the size to nil' do
- @lazy.size.should == nil
- end
- end
-
- context 'when yielded with multiple arguments' do
- before :each do
- enum = Object.new.to_enum
- class << enum
- def each
- yield 0, 'foo'
- yield 1, 'FOO'
- yield 2, 'bar'
- end
- end
- @lazy = enum.lazy
- end
-
- it 'returns all yield arguments as an array' do
- @lazy.uniq { |_, label| label.downcase }.force.should == [[0, 'foo'], [2, 'bar']]
- end
- end
- end
-end
diff --git a/spec/rubyspec/core/enumerator/lazy/zip_spec.rb b/spec/rubyspec/core/enumerator/lazy/zip_spec.rb
deleted file mode 100644
index 9c728364ce..0000000000
--- a/spec/rubyspec/core/enumerator/lazy/zip_spec.rb
+++ /dev/null
@@ -1,74 +0,0 @@
-# -*- encoding: us-ascii -*-
-
-require File.expand_path('../../../../spec_helper', __FILE__)
-require File.expand_path('../fixtures/classes', __FILE__)
-
-describe "Enumerator::Lazy#zip" do
- before :each do
- @yieldsmixed = EnumeratorLazySpecs::YieldsMixed.new.to_enum.lazy
- @eventsmixed = EnumeratorLazySpecs::EventsMixed.new.to_enum.lazy
- ScratchPad.record []
- end
-
- after :each do
- ScratchPad.clear
- end
-
- it "returns a new instance of Enumerator::Lazy" do
- ret = @yieldsmixed.zip []
- ret.should be_an_instance_of(Enumerator::Lazy)
- ret.should_not equal(@yieldsmixed)
- end
-
- it "keeps size" do
- Enumerator::Lazy.new(Object.new, 100) {}.zip([], []).size.should == 100
- end
-
- describe "when the returned lazy enumerator is evaluated by Enumerable#first" do
- it "stops after specified times" do
- (0..Float::INFINITY).lazy.zip([4, 5], [8]).first(2).should == [[0, 4, 8], [1, 5, nil]]
-
- @eventsmixed.zip([0, 1]).first(1)
- ScratchPad.recorded.should == [:before_yield]
- end
- end
-
- it "calls the block with a gathered array when yield with multiple arguments" do
- yields = @yieldsmixed.zip(EnumeratorLazySpecs::YieldsMixed.new.to_enum).force
- yields.should == [EnumeratorLazySpecs::YieldsMixed.gathered_yields,
- EnumeratorLazySpecs::YieldsMixed.gathered_yields].transpose
- end
-
- it "returns a Lazy when no arguments given" do
- @yieldsmixed.zip.should be_an_instance_of(Enumerator::Lazy)
- end
-
- it "raises a TypeError if arguments contain non-list object" do
- lambda { @yieldsmixed.zip [], Object.new, [] }.should raise_error(TypeError)
- end
-
- describe "on a nested Lazy" do
- it "keeps size" do
- Enumerator::Lazy.new(Object.new, 100) {}.map {}.zip([], []).size.should == 100
- end
-
- it "behaves as Enumerable#zip when given a block" do
- lazy_yields = []
- lazy_ret = @yieldsmixed.zip(EnumeratorLazySpecs::YieldsMixed.new.to_enum) { |lists| lazy_yields << lists }
- enum_yields = []
- enum_ret = EnumeratorLazySpecs::YieldsMixed.new.to_enum.zip(EnumeratorLazySpecs::YieldsMixed.new.to_enum) { |lists| enum_yields << lists }
-
- lazy_yields.should == enum_yields
- lazy_ret.should == enum_ret
- end
-
- describe "when the returned lazy enumerator is evaluated by Enumerable#first" do
- it "stops after specified times" do
- (0..Float::INFINITY).lazy.map(&:succ).zip([4, 5], [8]).first(2).should == [[1, 4, 8], [2, 5, nil]]
-
- @eventsmixed.zip([0, 1]).zip([0, 1]).first(1)
- ScratchPad.recorded.should == [:before_yield]
- end
- end
- end
-end
diff --git a/spec/rubyspec/core/enumerator/new_spec.rb b/spec/rubyspec/core/enumerator/new_spec.rb
deleted file mode 100644
index e8e0572a40..0000000000
--- a/spec/rubyspec/core/enumerator/new_spec.rb
+++ /dev/null
@@ -1,6 +0,0 @@
-require File.expand_path('../../../spec_helper', __FILE__)
-require File.expand_path('../../../shared/enumerator/new', __FILE__)
-
-describe "Enumerator.new" do
- it_behaves_like(:enum_new, :new)
-end
diff --git a/spec/rubyspec/core/enumerator/next_spec.rb b/spec/rubyspec/core/enumerator/next_spec.rb
deleted file mode 100644
index 6b3309a2bc..0000000000
--- a/spec/rubyspec/core/enumerator/next_spec.rb
+++ /dev/null
@@ -1,6 +0,0 @@
-require File.expand_path('../../../spec_helper', __FILE__)
-require File.expand_path('../../../shared/enumerator/next', __FILE__)
-
-describe "Enumerator#next" do
- it_behaves_like(:enum_next,:next)
-end
diff --git a/spec/rubyspec/core/enumerator/next_values_spec.rb b/spec/rubyspec/core/enumerator/next_values_spec.rb
deleted file mode 100644
index 2c4b23dc8d..0000000000
--- a/spec/rubyspec/core/enumerator/next_values_spec.rb
+++ /dev/null
@@ -1,55 +0,0 @@
-require File.expand_path('../../../spec_helper', __FILE__)
-
-describe "Enumerator#next_values" do
- before :each do
- o = Object.new
- def o.each
- yield :a
- yield :b1, :b2
- yield :c
- yield :d1, :d2
- yield :e1, :e2, :e3
- yield nil
- yield
- end
-
- @e = o.to_enum
- end
-
- it "returns the next element in self" do
- @e.next_values.should == [:a]
- end
-
- it "advances the position of the current element" do
- @e.next.should == :a
- @e.next_values.should == [:b1, :b2]
- @e.next.should == :c
- end
-
- it "advances the position of the enumerator each time when called multiple times" do
- 2.times { @e.next_values }
- @e.next_values.should == [:c]
- @e.next.should == [:d1, :d2]
- end
-
- it "works in concert with #rewind" do
- 2.times { @e.next }
- @e.rewind
- @e.next_values.should == [:a]
- end
-
- it "returns an array with only nil if yield is called with nil" do
- 5.times { @e.next }
- @e.next_values.should == [nil]
- end
-
- it "returns an empty array if yield is called without arguments" do
- 6.times { @e.next }
- @e.next_values.should == []
- end
-
- it "raises StopIteration if called on a finished enumerator" do
- 7.times { @e.next }
- lambda { @e.next_values }.should raise_error(StopIteration)
- end
-end
diff --git a/spec/rubyspec/core/enumerator/peek_spec.rb b/spec/rubyspec/core/enumerator/peek_spec.rb
deleted file mode 100644
index 26ac85161b..0000000000
--- a/spec/rubyspec/core/enumerator/peek_spec.rb
+++ /dev/null
@@ -1,36 +0,0 @@
-require File.expand_path('../../../spec_helper', __FILE__)
-
-describe "Enumerator#peek" do
- before :each do
- @e = (1..5).to_a.to_enum
- end
-
- it "returns the next element in self" do
- @e.peek.should == 1
- end
-
- it "does not advance the position of the current element" do
- @e.next.should == 1
- @e.peek.should == 2
- @e.next.should == 2
- end
-
- it "can be called repeatedly without advancing the position of the current element" do
- @e.peek
- @e.peek
- @e.peek.should == 1
- @e.next.should == 1
- end
-
- it "works in concert with #rewind" do
- @e.next
- @e.next
- @e.rewind
- @e.peek.should == 1
- end
-
- it "raises StopIteration if called on a finished enumerator" do
- 5.times { @e.next }
- lambda { @e.peek }.should raise_error(StopIteration)
- end
-end
diff --git a/spec/rubyspec/core/enumerator/peek_values_spec.rb b/spec/rubyspec/core/enumerator/peek_values_spec.rb
deleted file mode 100644
index ecc4758854..0000000000
--- a/spec/rubyspec/core/enumerator/peek_values_spec.rb
+++ /dev/null
@@ -1,57 +0,0 @@
-require File.expand_path('../../../spec_helper', __FILE__)
-
-describe "Enumerator#peek_values" do
- before :each do
- o = Object.new
- def o.each
- yield :a
- yield :b1, :b2
- yield :c
- yield :d1, :d2
- yield :e1, :e2, :e3
- yield nil
- yield
- end
-
- @e = o.to_enum
- end
-
- it "returns the next element in self" do
- @e.peek_values.should == [:a]
- end
-
- it "does not advance the position of the current element" do
- @e.next.should == :a
- @e.peek_values.should == [:b1, :b2]
- @e.next.should == [:b1, :b2]
- end
-
- it "can be called repeatedly without advancing the position of the current element" do
- @e.peek_values
- @e.peek_values
- @e.peek_values.should == [:a]
- @e.next.should == :a
- end
-
- it "works in concert with #rewind" do
- @e.next
- @e.next
- @e.rewind
- @e.peek_values.should == [:a]
- end
-
- it "returns an array with only nil if yield is called with nil" do
- 5.times { @e.next }
- @e.peek_values.should == [nil]
- end
-
- it "returns an empty array if yield is called without arguments" do
- 6.times { @e.next }
- @e.peek_values.should == []
- end
-
- it "raises StopIteration if called on a finished enumerator" do
- 7.times { @e.next }
- lambda { @e.peek_values }.should raise_error(StopIteration)
- end
-end
diff --git a/spec/rubyspec/core/enumerator/rewind_spec.rb b/spec/rubyspec/core/enumerator/rewind_spec.rb
deleted file mode 100644
index 666136d74a..0000000000
--- a/spec/rubyspec/core/enumerator/rewind_spec.rb
+++ /dev/null
@@ -1,38 +0,0 @@
-require File.expand_path('../../../spec_helper', __FILE__)
-require File.expand_path('../../../shared/enumerator/rewind', __FILE__)
-require File.expand_path('../fixtures/common', __FILE__)
-
-describe "Enumerator#rewind" do
- it_behaves_like(:enum_rewind, :rewind)
-
- it "calls the enclosed object's rewind method if one exists" do
- obj = mock('rewinder')
- enum = obj.to_enum
- obj.should_receive(:each).at_most(1)
- obj.should_receive(:rewind)
- enum.rewind
- end
-
- it "does nothing if the object doesn't have a #rewind method" do
- obj = mock('rewinder')
- enum = obj.to_enum
- obj.should_receive(:each).at_most(1)
- lambda { enum.rewind.should == enum }.should_not raise_error
- end
-end
-
-describe "Enumerator#rewind" do
- before :each do
- ScratchPad.record []
- @enum = EnumeratorSpecs::Feed.new.to_enum(:each)
- end
-
- it "clears a pending #feed value" do
- @enum.next
- @enum.feed :a
- @enum.rewind
- @enum.next
- @enum.next
- ScratchPad.recorded.should == [nil]
- end
-end
diff --git a/spec/rubyspec/core/enumerator/size_spec.rb b/spec/rubyspec/core/enumerator/size_spec.rb
deleted file mode 100644
index ef7940dc16..0000000000
--- a/spec/rubyspec/core/enumerator/size_spec.rb
+++ /dev/null
@@ -1,26 +0,0 @@
-require File.expand_path('../../../spec_helper', __FILE__)
-
-describe "Enumerator#size" do
- it "returns same value if set size is an Integer" do
- Enumerator.new(100) {}.size.should == 100
- end
-
- it "returns nil if set size is nil" do
- Enumerator.new(nil) {}.size.should be_nil
- end
-
- it "returns returning value from size.call if set size is a Proc" do
- base_size = 100
- enum = Enumerator.new(lambda { base_size + 1 }) {}
- base_size = 200
- enum.size.should == 201
- base_size = 300
- enum.size.should == 301
- end
-
- it "returns the result from size.call if the size respond to call" do
- obj = mock('call')
- obj.should_receive(:call).and_return(42)
- Enumerator.new(obj) {}.size.should == 42
- end
-end
diff --git a/spec/rubyspec/core/enumerator/to_enum_spec.rb b/spec/rubyspec/core/enumerator/to_enum_spec.rb
deleted file mode 100644
index a719e62212..0000000000
--- a/spec/rubyspec/core/enumerator/to_enum_spec.rb
+++ /dev/null
@@ -1,6 +0,0 @@
-require File.expand_path('../../../spec_helper', __FILE__)
-require File.expand_path('../../../shared/enumerator/enum_for', __FILE__)
-
-describe "Enumerator#to_enum" do
- it_behaves_like :enum_for, :enum_for
-end
diff --git a/spec/rubyspec/core/enumerator/with_index_spec.rb b/spec/rubyspec/core/enumerator/with_index_spec.rb
deleted file mode 100644
index 3d0ec0a298..0000000000
--- a/spec/rubyspec/core/enumerator/with_index_spec.rb
+++ /dev/null
@@ -1,72 +0,0 @@
-require File.expand_path('../../../spec_helper', __FILE__)
-require File.expand_path('../../../shared/enumerator/with_index', __FILE__)
-require File.expand_path('../../enumerable/shared/enumeratorized', __FILE__)
-
-describe "Enumerator#with_index" do
- it_behaves_like(:enum_with_index, :with_index)
- it_behaves_like(:enumeratorized_with_origin_size, :with_index, [1,2,3].select)
-
- it "returns a new Enumerator when no block is given" do
- enum1 = [1,2,3].select
- enum2 = enum1.with_index
- enum2.should be_an_instance_of(Enumerator)
- enum1.should_not === enum2
- end
-
- it "accepts an optional argument when given a block" do
- lambda do
- @enum.with_index(1) { |f| f}
- end.should_not raise_error(ArgumentError)
- end
-
- it "accepts an optional argument when not given a block" do
- lambda do
- @enum.with_index(1)
- end.should_not raise_error(ArgumentError)
- end
-
- it "numbers indices from the given index when given an offset but no block" do
- @enum.with_index(1).to_a.should == [[1,1], [2,2], [3,3], [4,4]]
- end
-
- it "numbers indices from the given index when given an offset and block" do
- acc = []
- @enum.with_index(1) {|e,i| acc << [e,i] }
- acc.should == [[1,1], [2,2], [3,3], [4,4]]
- end
-
- it "raises a TypeError when the argument cannot be converted to numeric" do
- lambda do
- @enum.with_index('1') {|*i| i}
- end.should raise_error(TypeError)
- end
-
- it "converts non-numeric arguments to Integer via #to_int" do
- (o = mock('1')).should_receive(:to_int).and_return(1)
- @enum.with_index(o).to_a.should == [[1,1], [2,2], [3,3], [4,4]]
- end
-
- it "coerces the given numeric argument to an Integer" do
- @enum.with_index(1.678).to_a.should == [[1,1], [2,2], [3,3], [4,4]]
-
- res = []
- @enum.with_index(1.001) { |*x| res << x}
- res.should == [[1,1], [2,2], [3,3], [4,4]]
- end
-
- it "treats nil argument as no argument" do
- @enum.with_index(nil).to_a.should == [[1,0], [2,1], [3,2], [4,3]]
-
- res = []
- @enum.with_index(nil) { |*x| res << x}
- res.should == [[1,0], [2,1], [3,2], [4,3]]
- end
-
- it "accepts negative argument" do
- @enum.with_index(-1).to_a.should == [[1,-1], [2,0], [3,1], [4,2]]
-
- res = []
- @enum.with_index(-1) { |*x| res << x}
- res.should == [[1,-1], [2,0], [3,1], [4,2]]
- end
-end
diff --git a/spec/rubyspec/core/enumerator/with_object_spec.rb b/spec/rubyspec/core/enumerator/with_object_spec.rb
deleted file mode 100644
index a7bd74220c..0000000000
--- a/spec/rubyspec/core/enumerator/with_object_spec.rb
+++ /dev/null
@@ -1,6 +0,0 @@
-require File.expand_path('../../../spec_helper', __FILE__)
-require File.expand_path('../../../shared/enumerator/with_object', __FILE__)
-
-describe "Enumerator#with_object" do
- it_behaves_like :enum_with_object, :with_object
-end
diff --git a/spec/rubyspec/core/enumerator/yielder/append_spec.rb b/spec/rubyspec/core/enumerator/yielder/append_spec.rb
deleted file mode 100644
index d2313b01f4..0000000000
--- a/spec/rubyspec/core/enumerator/yielder/append_spec.rb
+++ /dev/null
@@ -1,35 +0,0 @@
-require File.expand_path('../../../../spec_helper', __FILE__)
-
-describe "Enumerator::Yielder#<<" do
- # TODO: There's some common behavior between yield and <<; move to a shared spec
- it "yields the value to the block" do
- ary = []
- y = Enumerator::Yielder.new {|x| ary << x}
- y << 1
-
- ary.should == [1]
- end
-
- it "doesn't double-wrap Arrays" do
- yields = []
- y = Enumerator::Yielder.new {|args| yields << args }
- y << [1]
- yields.should == [[1]]
- end
-
- it "returns self" do
- y = Enumerator::Yielder.new {|x| x + 1}
- (y << 1).should equal(y)
- end
-
- it "requires multiple arguments" do
- Enumerator::Yielder.instance_method(:<<).arity.should < 0
- end
-
- it "yields with passed arguments" do
- yields = []
- y = Enumerator::Yielder.new {|*args| yields << args }
- y.<<(1, 2)
- yields.should == [[1, 2]]
- end
-end
diff --git a/spec/rubyspec/core/enumerator/yielder/initialize_spec.rb b/spec/rubyspec/core/enumerator/yielder/initialize_spec.rb
deleted file mode 100644
index 095b6a64c6..0000000000
--- a/spec/rubyspec/core/enumerator/yielder/initialize_spec.rb
+++ /dev/null
@@ -1,18 +0,0 @@
-# -*- encoding: us-ascii -*-
-
-require File.expand_path('../../../../spec_helper', __FILE__)
-
-describe "Enumerator::Yielder#initialize" do
- before :each do
- @class = Enumerator::Yielder
- @uninitialized = @class.allocate
- end
-
- it "is a private method" do
- @class.should have_private_instance_method(:initialize, false)
- end
-
- it "returns self when given a block" do
- @uninitialized.send(:initialize) {}.should equal(@uninitialized)
- end
-end
diff --git a/spec/rubyspec/core/enumerator/yielder/yield_spec.rb b/spec/rubyspec/core/enumerator/yielder/yield_spec.rb
deleted file mode 100644
index be904afef1..0000000000
--- a/spec/rubyspec/core/enumerator/yielder/yield_spec.rb
+++ /dev/null
@@ -1,16 +0,0 @@
-require File.expand_path('../../../../spec_helper', __FILE__)
-
-describe "Enumerator::Yielder#yield" do
- it "yields the value to the block" do
- ary = []
- y = Enumerator::Yielder.new {|x| ary << x}
- y.yield 1
-
- ary.should == [1]
- end
-
- it "returns the result of the block for the given value" do
- y = Enumerator::Yielder.new {|x| x + 1}
- y.yield(1).should == 2
- end
-end