summaryrefslogtreecommitdiff
path: root/test
AgeCommit message (Collapse)Author
2020-07-20[ruby/csv] Do not loop forever when skip_lines regexp matches zero length ↵Mike MacDonald
with anchors (#110) * Do not loop forever when skip_lines regexp matches zero length with anchors * Remove needless white spaces * Add missing eos check in skip_needless_lines * Simplify test https://github.com/ruby/csv/commit/3b15d4a3e8 Notes: Merged: https://github.com/ruby/ruby/pull/3332
2020-07-20[ruby/csv] Make CSV::Row#dup return a usable Row (#108)Jim Kane
* Make CSV::Row#dup return a usable Row Previously, calling `dup` on a `CSV::Row` object yielded an object whose copy was too shallow. Changing the clone's fields would also change the fields on the source. This change makes the clone more distinct from the source, so that changes can be made to its fields without affecting the source. * Simplify https://github.com/ruby/csv/commit/64a1ea06fc Notes: Merged: https://github.com/ruby/ruby/pull/3332
2020-07-20[ruby/csv] Suppress warningsSutou Kouhei
https://github.com/ruby/csv/commit/b37df55f46 Notes: Merged: https://github.com/ruby/ruby/pull/3332
2020-07-20Revert "test/csv/write/test_general.rb: suppress warnings"Nobuyoshi Nakada
This reverts commit 375cf129189f32f7be76ac525035bcde691a63e7, to sync csv from the upstream. Notes: Merged: https://github.com/ruby/ruby/pull/3332
2020-07-19Special case Range#max for integer beginning and Float::Infinity endJeremy Evans
Popular Ruby libraries such as Rails and Rubocop relying on the previous behavior, even though it is technically a bug. The correct behavior is probably raising RangeError, since that is what an endless range raises. Related to [Bug #17017]
2020-07-19Fix Range#max for beginless Integer ranges [Bug #17034]Michael Kohl
* Fix Range#max for beginless Integer ranges * Update test/ruby/test_range.rb * Fix formatting https://github.com/ruby/ruby/pull/3328 Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> Notes: Merged-By: nobu <nobu@ruby-lang.org>
2020-07-18Optimize Array#min (#3324)Kenta Murata
The benchmark result is below: | |compare-ruby|built-ruby| |:---------------|-----------:|---------:| |ary2.min | 39.105M| 39.442M| | | -| 1.01x| |ary10.min | 23.995M| 30.762M| | | -| 1.28x| |ary100.min | 6.249M| 10.783M| | | -| 1.73x| |ary500.min | 1.408M| 2.714M| | | -| 1.93x| |ary1000.min | 828.397k| 1.465M| | | -| 1.77x| |ary2000.min | 332.256k| 570.504k| | | -| 1.72x| |ary3000.min | 338.079k| 573.868k| | | -| 1.70x| |ary5000.min | 168.217k| 286.114k| | | -| 1.70x| |ary10000.min | 85.512k| 143.551k| | | -| 1.68x| |ary20000.min | 43.264k| 71.935k| | | -| 1.66x| |ary50000.min | 17.317k| 29.107k| | | -| 1.68x| |ary100000.min | 9.072k| 14.540k| | | -| 1.60x| |ary1000000.min | 872.930| 1.436k| | | -| 1.64x| compare-ruby is 9f4b7fc82e. Notes: Merged-By: mrkn <mrkn@ruby-lang.org>
2020-07-18Optimize Array#max (#3325)Kenta Murata
The benchmark result is below: | |compare-ruby|built-ruby| |:---------------|-----------:|---------:| |ary2.max | 38.837M| 40.830M| | | -| 1.05x| |ary10.max | 23.035M| 32.626M| | | -| 1.42x| |ary100.max | 5.490M| 11.020M| | | -| 2.01x| |ary500.max | 1.324M| 2.679M| | | -| 2.02x| |ary1000.max | 699.167k| 1.403M| | | -| 2.01x| |ary2000.max | 284.321k| 570.446k| | | -| 2.01x| |ary3000.max | 282.613k| 571.683k| | | -| 2.02x| |ary5000.max | 145.120k| 285.546k| | | -| 1.97x| |ary10000.max | 72.102k| 142.831k| | | -| 1.98x| |ary20000.max | 36.065k| 72.077k| | | -| 2.00x| |ary50000.max | 14.343k| 29.139k| | | -| 2.03x| |ary100000.max | 7.586k| 14.472k| | | -| 1.91x| |ary1000000.max | 726.915| 1.495k| | | -| 2.06x| Notes: Merged-By: mrkn <mrkn@ruby-lang.org>
2020-07-18Suppress bell during the testNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/3322
2020-07-17Fix MonitorMixin when the super's initialize has kwargsMasataka Pocke Kuwabara
Notes: Merged: https://github.com/ruby/ruby/pull/3310
2020-07-16Remove fiber HTTP test.Samuel Williams
The HTTP test hits a remote website which isn't always available and is not self-contained. Ideally we will rewrite this test with an internal web server. Notes: Merged: https://github.com/ruby/ruby/pull/3321
2020-07-15Fixed infinite loop at error in printing cause [Bug #17033]Nobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/3320
2020-07-15Close sockets if blocking to fix leaked fdsNobuyoshi Nakada
2020-07-15rubygems is needed to run solo-file testKoichi Sasada
2020-07-15rubygems is needed to run solo-file testKoichi Sasada
2020-07-13Fix Range#{max,minmax} for range with integer beginning and non-integer endJeremy Evans
Previously, for inclusive ranges, the max would show up as the end of the range, even though the end was not an integer and would not be the maximum value. For exclusive ranges, max/minmax would previously raise a TypeError, even though it is possible to get the correct maximum. This change to max/minmax also uncovered a similar error in cover?, which calls max in certain cases, so adjust the code there so that cover? still works as expected. Fixes [Bug #17017] Notes: Merged: https://github.com/ruby/ruby/pull/3306 Merged-By: jeremyevans <code@jeremyevans.net>
2020-07-13Make the mkmf methods private in the global [Bug #16896]Nobuyoshi Nakada
2020-07-12Fixed yday and wday with timezone [Bug #17024]Nobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/3312
2020-07-12bidecimal: improve tests' independence (#3297)Kenta Murata
Tests depending on the rounding mode must specify the appropriate rounding mode and restore to the original mode at the end. Notes: Merged-By: mrkn <mrkn@ruby-lang.org>
2020-07-10Encode ' as &apos; when using encode(xml: :attr)Jeremy Evans
Fixes [Bug #16922] Notes: Merged: https://github.com/ruby/ruby/pull/3177
2020-07-10Fix an inaccurate comment in test_jitTakashi Kokubun
2020-07-10Make sure vm_call_cfunc uses inlined ccTakashi Kokubun
which is checked by the first guard. When JIT-inlined cc and operand cd->cc are different, the JIT-ed code might wrongly dispatch cd->cc even while class check is done with another cc inlined by JIT. This fixes SEGV on railsbench.
2020-07-09Add instance_methods to class generated by DelegateClassMasataka Pocke Kuwabara
Also, make DelegateClass.instance_method fallback to superclass. Fixes [Bug #16982] Notes: Merged: https://github.com/ruby/ruby/pull/3221 Merged-By: jeremyevans <code@jeremyevans.net>
2020-07-08Added `NODE_SPECIAL_EXCESSIVE_COMMA` info to `ARGS` of ↵manga_osyo
`RubyVM::AbstractSyntaxTree`. Notes: Merged: https://github.com/ruby/ruby/pull/3298
2020-07-06[ruby/bigdecimal] Return US-ASCII string from BigDecimal#to_sKenta Murata
Fixes #159 https://github.com/ruby/bigdecimal/commit/57ee92e700 Notes: Merged: https://github.com/ruby/ruby/pull/3295
2020-07-06[ruby/bigdecimal] Add Complex#to_dKenta Murata
https://github.com/ruby/bigdecimal/commit/97e794ac97 Notes: Merged: https://github.com/ruby/ruby/pull/3295
2020-07-06[ruby/bigdecimal] Make tests pass on Ruby 2.4Jeremy Evans
https://github.com/ruby/bigdecimal/commit/9d19e842ee Notes: Merged: https://github.com/ruby/ruby/pull/3295
2020-07-06[ruby/bigdecimal] Remove definition of BigDecimal#initialize_copyJeremy Evans
This leaves the default definition, which will raise FrozenError. https://github.com/ruby/bigdecimal/commit/05e843d838 Notes: Merged: https://github.com/ruby/ruby/pull/3295
2020-07-06[ruby/bigdecimal] Support a Complex in Kernel.BigDecimal()Kenta Murata
https://github.com/ruby/bigdecimal/commit/00795cb01f Notes: Merged: https://github.com/ruby/ruby/pull/3295
2020-07-06[ruby/bigdecimal] Undef BigDecimal#initialize_copyJeremy Evans
Both BigDecimal#clone and BigDecimal#dup return self, there is no reason to have initialize_copy exposed as a Ruby method. The same is true for initialize_clone and initialize_dup. https://github.com/ruby/bigdecimal/commit/aaf237fa9e Notes: Merged: https://github.com/ruby/ruby/pull/3295
2020-07-06Add operator info to `OP_ASGN2` of `RubyVM::AbstractSyntaxTree`.manga_osyo
Notes: Merged: https://github.com/ruby/ruby/pull/3294
2020-07-05Removed duplicate test with test_BigDecimal_bug7522Nobuyoshi Nakada
2020-07-04Check ROBJECT_EMBED on guards-merged ivar accessTakashi Kokubun
Fix CI failure like http://ci.rvm.jp/results/trunk-mjit-wait@silicon-docker/3043247 introduced by a69dd699ee630dd1086627dbca15a218a8538b6f
2020-07-04Fix non-numeric exclusive Range#minmax bugSam Bostock
The implementation of Range#minmax added in d5c60214c45 causes the following incorrect behaviour: ('a'...'c').minmax => ["a", ["a", "b"]] instead of ('a'...'c').minmax => ["a", "b"] This is because the C implementation of Range#minmax (range_minmax) directly delegates to the C implementation of Range#min (range_min) and Range#max (range_max), without changing the execution context. Range#max's C implementation (range_max), when given a non-numeric exclusive range, delegates to super, which is meant to call Enumerable#max. However, because range_max is called directly by range_minmax, super calls Enumerable#minmax instead, causing the incorrect nesting. Perhaps it is possible to change the execution context in an optimized manner, but the simplest solution seems to be to just explicitly delegate from Range#minmax to Range#min and Range#max. Notes: Merged: https://github.com/ruby/ruby/pull/3285
2020-07-03Make Kernel#then, #yield_self, #frozen? builtin (#3283)Takashi Kokubun
* Make Kernel#then, #yield_self, #frozen? builtin * Fix test_jit Notes: Merged-By: k0kubun <takashikkbn@gmail.com>
2020-07-03Rewrite Kernel#tap with Ruby (#3281)Takashi Kokubun
* Rewrite Kernel#tap with Ruby This was good for VM too, but of course my intention is to unblock JIT's inlining of a block over yield (inlining invokeyield has not been committed though). * Fix test_settracefunc About the :tap deletions, the :tap events are actually traced (we already have a TracePoint test for builtin methods), but it's filtered out by tp.path == "xyzzy" (it became "<internal:kernel>"). We could trace tp.path == "<internal:kernel>" cases too, but the lineno is impacted by kernel.rb changes and I didn't want to make it fragile for kernel.rb lineno changes. Notes: Merged-By: k0kubun <takashikkbn@gmail.com>
2020-07-03test/json/json_fixtures_test.rb: Prevent an "out of range" warningYusuke Endoh
``` /home/mame/work/ruby/.ext/common/json/common.rb:263: warning: Float 23456789012E666 out of range ```
2020-07-03Reintroduce c565dfb09ad7d55fa671f65cea7088a914bf1931Yusuke Endoh
2020-07-01Merge json-2.3.1 from flori/jsonHiroshi SHIBATA
2020-07-01[flori/json] Fix test that wasn't testing anythingMarc-Andre Lafortune
https://github.com/flori/json/commit/d5c6566b41
2020-06-28[ruby/fiddle] support for very old libffiNobuyoshi Nakada
Define `Fiddle::TYPE_VARIADIC` only when `ffi_prep_cif_var` is available, otherwise skip the test for it.
2020-06-27[ruby/fiddle] Support MSWIN (#43)Sutou Kouhei
https://github.com/ruby/fiddle/commit/f16e7ff6e0 Notes: Merged: https://github.com/ruby/ruby/pull/3265
2020-06-27[ruby/fiddle] test windows: use _snprintfSutou Kouhei
https://github.com/ruby/fiddle/commit/aa261bdb9f Notes: Merged: https://github.com/ruby/ruby/pull/3265
2020-06-27[ruby/fiddle] Add support for variadic argumentsSutou Kouhei
GitHub: fix GH-39 Reported by kojix2. Thanks!!! https://github.com/ruby/fiddle/commit/6c4cb904dc Notes: Merged: https://github.com/ruby/ruby/pull/3265
2020-06-26Revert "Try increasing read timeout of rinda tests"Takashi Kokubun
This reverts commit 5c03e4680e724faeedb2c5fc1581d5fcb66aaff2. I gave up stabilizing Rinda::TupleSpaceProxyTest#test_cancel_02. As the test uses sleep, it's probably not gonna be stable with --jit-wait. http://ci.rvm.jp/results/trunk-mjit-wait@silicon-docker/3028276 http://ci.rvm.jp/results/trunk-mjit-wait@silicon-docker/3028065 http://ci.rvm.jp/results/trunk-mjit-wait@silicon-docker/3027857 http://ci.rvm.jp/results/trunk-mjit-wait@silicon-docker/3027441
2020-06-27Suppress "assigned but unused variable" warningsKazuki Tsujimoto
2020-06-27Add #deconstruct cache to find patternVladimir Dementyev
Notes: Merged: https://github.com/ruby/ruby/pull/3104
2020-06-27Optimize array pattern matching by caching #deconstruct valueVladimir Dementyev
Notes: Merged: https://github.com/ruby/ruby/pull/3104
2020-06-26[ruby/fiddle] Fixed typosNobuyoshi Nakada
https://github.com/ruby/fiddle/commit/a09e66adf4 https://github.com/ruby/fiddle/commit/6cab9b45d6 https://github.com/ruby/fiddle/commit/ab72b19bed
2020-06-25Collect insns from a child processTakashi Kokubun
to make sure :opt_invokebuiltin_delegate_leave doesn't become :(trace_)opt_invokebuiltin_delegate. This is to prevent a warning like > /tmp/ruby/v3/src/trunk-test/test/ruby/test_jit.rb:618: warning: 'opt_invokebuiltin_delegate_leave' insn is not included in the script. Actual insns are: opt_invokebuiltin_delegate leave