Move remaining core specs to use fewer shared examples#1369
Conversation
f311e61 to
f51cf1d
Compare
|
Let me split this up in two PRs then |
f51cf1d to
304b83a
Compare
|
|
||
| describe "Enumerable#map" do | ||
| it_behaves_like :enumerable_collect, :map | ||
| it "is an alias of Enumerable#collect" do |
There was a problem hiding this comment.
I would prefer the other way around, i.e. map/select/include? are way more used than collect/find_all/member? so I think they should have the specs and the less used aliases should just check they are aliases of the most-used methods.
The other aliases in Enumerable look good in terms of the most-used having the specs.
There was a problem hiding this comment.
This is something that could be fixed later, we could merge both PRs and I could review all usages of is an alias of to see which don't match that rule.
There was a problem hiding this comment.
No need to put this in the blame, I'll take care of it in this PR. It's what rdoc considers the alias but I don't mind choosing the more popular version instead.
I'll do that tomorrow or so, already pretty late for me now.
This shared example didn't even care about the method. So I just mentioned in one of the methods that tests are found in a different file
304b83a to
83885f1
Compare
| 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 |
| ENV["foo"] = @saved_foo | ||
| end | ||
|
|
||
| it "removes environment variables for which the block returns true" do |
| ENV["foo"] = @saved_foo | ||
| end | ||
|
|
||
| it "returns a Hash of names and values for which block return true" do |
It's quite chonky but mostly more of the same for #1364. This converts the entirety of core specs.
Before:
3805 files, 35698 examples, 273269 expectations, 0 failure, 0 errors, 0 tagged
After:
3805 files, 34586 examples, 256944 expectations, 0 failure, 0 errors, 0 tagged
1112 fewer specs.