mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
Bug Fix Enumerator::Lazy#uniq state for multiple call
* enumerator.c (lazy_uniq_i): create new hash for each calls.
[Fix GH-1820]
Currently
2.5.0-preview1 :001 > arr = (0..100).lazy.uniq{|i| i % 10}
=> #<Enumerator::Lazy: #<Enumerator::Lazy: 0..100>:uniq>
2.5.0-preview1 :002 > arr.to_a
=> [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
2.5.0-preview1 :003 > arr.to_a
=> []
Expected
arr.to_a to always return same output
From: Anmol Chopra <anmolchopra@rocketbox.in>
test_enumerator.rb: duplicate assertions
* test/ruby/test_enumerator.rb (test_uniq): remove assertions
which ared duplicate of lazy enumerator tests in
test_lazy_enumerator.rb.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_5@63824 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
||
|---|---|---|
| .. | ||
| argf | ||
| array | ||
| basicobject | ||
| bignum | ||
| binding | ||
| builtin_constants | ||
| class | ||
| comparable | ||
| complex | ||
| dir | ||
| encoding | ||
| enumerable | ||
| enumerator | ||
| env | ||
| exception | ||
| false | ||
| fiber | ||
| file | ||
| filetest | ||
| fixnum | ||
| float | ||
| gc | ||
| hash | ||
| integer | ||
| io | ||
| kernel | ||
| main | ||
| marshal | ||
| matchdata | ||
| math | ||
| method | ||
| module | ||
| mutex | ||
| nil | ||
| numeric | ||
| objectspace | ||
| proc | ||
| process | ||
| random | ||
| range | ||
| rational | ||
| regexp | ||
| signal | ||
| string | ||
| struct | ||
| symbol | ||
| systemexit | ||
| thread | ||
| threadgroup | ||
| time | ||
| tracepoint | ||
| true | ||
| unboundmethod | ||
| warning | ||