summaryrefslogtreecommitdiff
path: root/test
AgeCommit message (Collapse)Author
40 hourstest/objspace/test_objspace.rb: check stderr before stdoutYusuke Endoh
When `require "objspace/trace"` fails, previously the failure says: ``` 1) Failure: TestObjSpace#test_objspace_trace [/tmp/ruby/v3/src/trunk-mjit/test/objspace/test_objspace.rb:621]: <3> expected but was <0>. ``` but this is hard to debug.
42 hourstest/ruby/test_refinement.rb: prevent "assigned but unused variable"Yusuke Endoh
45 hoursext/objspace/lib/objspace/trace.rb: AddedYusuke Endoh
This file, when require'ed, starts tracing the object allocations, and redefines `Kernel#p` to show the allocation site. This commit is experimental; the library name and APIs may change. [Feature #17762]
3 daysAlso `\U` after control/meta is invalid [Bug #17861]Nobuyoshi Nakada
As well as `\u`, `\U` should be invalid there too. And highlight including `u`/`U` not only the backslash before it.
3 daysAvoid improper optimization of case statements mixed integer/rational/complexJeremy Evans
Fixes [Bug #17857] Notes: Merged: https://github.com/ruby/ruby/pull/4496
3 daysFix handling of control/meta escapes in literal regexpsJeremy Evans
Ruby uses a recursive algorithm for handling control/meta escapes in strings (read_escape). However, the equivalent code for regexps (tokadd_escape) in did not use a recursive algorithm. Due to this, Handling of control/meta escapes in regexp did not have the same behavior as in strings, leading to behavior such as the following returning nil: ```ruby /\c\xFF/ =~ "\c\xFF" ``` Switch the code for handling \c, \C and \M in literal regexps to use the same code as for strings (read_escape), to keep behavior consistent between the two. Fixes [Bug #14367] Notes: Merged: https://github.com/ruby/ruby/pull/4495
3 days[rubygems/rubygems] Use `Time.stub :now` to avoid a random failureYusuke Endoh
Essentially this reverts 45464bfcbdf9f9cfb440950bc57a27d237627a17. The commit removed a mock of Time.now, which caused a random failure. http://rubyci.s3.amazonaws.com/ubuntu1804/ruby-master/log/20210512T123004Z.fail.html.gz ``` 1) Failure: TestGemPackageTarWriter#test_add_file_signer [/home/chkbuild/chkbuild/tmp/build/20210512T123004Z/ruby/test/rubygems/test_gem_package_tar_writer.rb:117]: Field mtime of the tar header differs.. <"14046746312\u0000"> expected but was <"14046746311\x00">. ``` Object#stub is defined at f1af59fe02ef2cc58f13e2742e4cc6cf8c2a1a20, so now `Time.stub :now` works. https://github.com/rubygems/rubygems/commit/85f60a9ed0
3 daysparse.y: Allow "command" syntax in endless method definitionYusuke Endoh
This change allows `def hello = puts "Hello"` without parentheses. Note that `private def hello = puts "Hello"` does not parse for technical reason. [Feature #17398]
4 days* remove trailing spaces. [ci skip]git
4 daysUse another class for the comparison.Koichi Sasada
`memsize_of(Object.new)` can be changed with past ivar creation history for Object instances (another Object instance has 4 or more ivars, next created Object instance has the area for the ivars). So use antoher class for the comparison.
4 daysUse assert_raise instead of assert_raisesHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/4491
4 daysRevert 924ce2c5ba4d1c1dc781a6a06682204d358421bbHiroshi SHIBATA
Because test-unit didn't provide the benchmark test. And This test is fragile with the several environments. Notes: Merged: https://github.com/ruby/ruby/pull/4491
4 days[rubygems/rubygems] Added begin-end block for java platformHiroshi SHIBATA
Because pend of test-unit raises exception. https://github.com/rubygems/rubygems/commit/b5e2d0855a Notes: Merged: https://github.com/ruby/ruby/pull/4491
4 days[rubygems/rubygems] Replace skip to pendHiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/0b145135c7 Notes: Merged: https://github.com/ruby/ruby/pull/4491
4 days[rubygems/rubygems] util/rubocop -aHiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/a10ff97830 Notes: Merged: https://github.com/ruby/ruby/pull/4491
4 days[rubygems/rubygems] Don't use Minitest::MockHiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/d3fa893597 Notes: Merged: https://github.com/ruby/ruby/pull/4491
4 days[rubygems/rubygems] Removed minitest/mock from ↵Hiroshi SHIBATA
test/rubygems/test_gem_remote_fetcher.rb https://github.com/rubygems/rubygems/commit/f1af59fe02 Notes: Merged: https://github.com/ruby/ruby/pull/4491
4 days[rubygems/rubygems] Removed minitest/mock from test_gem_package_tar_writer.rbHiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/45464bfcbd Notes: Merged: https://github.com/ruby/ruby/pull/4491
4 days[rubygems/rubygems] capture_output will return empty string, not nilHiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/3fa93f6144 Notes: Merged: https://github.com/ruby/ruby/pull/4491
4 days[rubygems/rubygems] Fixed variable scope at test_silent_systemHiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/bfcdf79657 Notes: Merged: https://github.com/ruby/ruby/pull/4491
4 days[rubygems/rubygems] Rewrite with capture_outputHiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/a091004ded Notes: Merged: https://github.com/ruby/ruby/pull/4491
4 days[rubygems/rubygems] Use capture_output instead of capture_ioHiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/c46185abe3 Notes: Merged: https://github.com/ruby/ruby/pull/4491
4 days[rubygems/rubygems] Use assert_raise instead of assert_raisesHiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/769e87f011 Notes: Merged: https://github.com/ruby/ruby/pull/4491
4 days[rubygems/rubygems] Use dummy assertion for assert_httpsHiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/64d843fe17 Notes: Merged: https://github.com/ruby/ruby/pull/4491
4 days[rubygems/rubygems] Use capture_output instead of assert_silentHiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/3225aab7f8 Notes: Merged: https://github.com/ruby/ruby/pull/4491
4 days[rubygems/rubygems] Use capture_output instead of capture_io for test-unitHiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/ab9c80d4cb Notes: Merged: https://github.com/ruby/ruby/pull/4491
4 days[rubygems/rubygems] Use assert_path_exist and assert_path_not_exist instead ↵Hiroshi SHIBATA
of assert_path_exists and refute_path_exists https://github.com/rubygems/rubygems/commit/a7c93558c3 Notes: Merged: https://github.com/ruby/ruby/pull/4491
4 days[rubygems/rubygems] Extract assert_output to assert_empty and assert_equal ↵Hiroshi SHIBATA
with capture_output https://github.com/rubygems/rubygems/commit/f6759440a4 Notes: Merged: https://github.com/ruby/ruby/pull/4491
4 days[rubygems/rubygems] Use Regexp with refute_matchHiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/51fdbe53bc Notes: Merged: https://github.com/ruby/ruby/pull/4491
4 days[rubygems/rubygems] Also use capture_output instead of capture_ioHiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/229858ea56 Notes: Merged: https://github.com/ruby/ruby/pull/4491
4 days[rubygems/rubygems] Use capture_output instead of capture_io.Hiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/ad9206d4d0 Notes: Merged: https://github.com/ruby/ruby/pull/4491
4 daysskip test for debug.Koichi Sasada
test_memsize_of_iseq fails on repeat tests and it seems to difficult to solve immediately. Now this test is skipped. It seems that the result of `memsize_of(Object.new)` are increased. Why...?
4 dayssuppress warnings on repeat tests.Koichi Sasada
Constant definitions are affect on outer namespace of an anonymous module. To define constants on the anonymous module, this patch uses Module#class_eval(str).
4 daystest_cdhash: refactor change class卜部昌平
It is now strange to test Complex in a class named Rational_Test. Notes: Merged: https://github.com/ruby/ruby/pull/4469
4 dayscdhash_cmp: can also take complex卜部昌平
There are complex literals `123i`, which can also be a case condition. Notes: Merged: https://github.com/ruby/ruby/pull/4469
4 dayscdhash_cmp: rational literals with fractions卜部昌平
Nobu kindly pointed out that rational literals can have fractions. Notes: Merged: https://github.com/ruby/ruby/pull/4469
4 dayscdhash_cmp: can take rational literals卜部昌平
Rational literals are those integers suffixed with `r`. They tend to be a part of more complex expressions like `123/456r`, but in theory they can live alone. When such "bare" rational literals are passed to case-when branch, we have to take care of them. Fixes [Bug #17854] Notes: Merged: https://github.com/ruby/ruby/pull/4469
4 daysRun nmake check on Actions (#4487)Takashi Kokubun
* Run nmake check on Actions * Skip tests not working in mswin GitHub Actions * Override TEMP * Revert "Skip tests not working in mswin GitHub Actions" This reverts commit 544d2575fcdf23ae63cd25aa03fce10c28b259f2. * Revert "Revert "Skip tests not working in mswin GitHub Actions"" This reverts commit e1f8ad7862c9c4be52dc6e1031a004621eb07e6e. * Fix timeouts * Skip some more broken tests * Update windows.yml * Add a guard for rbasic_spec * Revert "Update windows.yml" This reverts commit bc9694b6b3b9594d406378d15ca11723fb052bc8. * Skip the ensure clause * Simplify the ensure Notes: Merged-By: k0kubun <takashikkbn@gmail.com>
4 daysMethod cache: fix refinement entry handlingAlan Wu
To invalidate some callable method entries, we replace the entry in the class. Most types of method entries are on the method table of the origin class, but refinement entries without an orig_me are housed in the method table of the class itself. They are there because refinements take priority over prepended methods. By unconditionally inserting a copy of the refinement entry into the origin class, clearing the method cache created situations where there are refinement entry duplicates in the lookup chain, leading to infinite loops and other problems. Update the replacement logic to use the right class that houses the method entry. Also, be more selective about cache invalidation when moving refinement entries for prepend. This avoids calling clear_method_cache_by_id_in_class() before refinement entries are in the place it expects. [Bug #17806] Notes: Merged: https://github.com/ruby/ruby/pull/4386 Merged-By: XrXr
5 daystest/irb/test_raise_no_backtrace_exception.rb: Set LC_MESSAGES as UTF-8Yusuke Endoh
5 days[ruby/irb] Skip test_raise_exception_with_invalid_byte_sequenceTakashi Kokubun
on Windows for now. It seems like we haven't figured this out yet. https://github.com/ruby/irb/commit/ecf5a1ace1
5 daysExplicitly specify encoding for another test as wellTakashi Kokubun
Same as e2ccc3301e2c69533b9ef2464613781c6c964c3a https://ci.appveyor.com/project/ruby/ruby/builds/39102539/job/k8m1yrrjesxbgvtq
5 daystest/irb/test_raise_no_backtrace_exception.rb: UTF-8 is expectedYusuke Endoh
... for the output of assert_in_out_err. This will fix the following failure on many CI machines http://rubyci.s3.amazonaws.com/arch/ruby-master/log/20210511T030005Z.fail.html.gz ``` 1) Failure: TestIRB::TestRaiseNoBacktraceException#test_raise_exception_with_different_encoding_containing_invalid_byte_sequence [/home/chkbuild/chkbuild/tmp/build/20210511T030005Z/ruby/test/irb/test_raise_no_backtrace_exception.rb:41]: pid 221531 exit 0. 1. [1/2] Assertion for "stdout" | invalid byte sequence in US-ASCII. ```
5 days[ruby/irb] Skip the new IRB test on Windows for nowTakashi Kokubun
It's not passing from the beginning https://github.com/ruby/ruby/runs/2550929220 https://ci.appveyor.com/project/ruby/ruby/builds/39100747 https://github.com/ruby/irb/commit/71fc180018
5 daysSync bundler & rubygemsDavid Rodríguez
Notes: Merged: https://github.com/ruby/ruby/pull/4367
5 days[ruby/irb] Treat encodings in exception correctlyaycabta
https://github.com/ruby/irb/commit/4452adbe04
6 days[ruby/psych] Fix custom marshalization with symbolize_names: trueJean Boussier
https://github.com/ruby/psych/commit/ee26f26ab5
6 days[ruby/psych] Use assert_raise instead of assert_raisesHiroshi SHIBATA
https://github.com/ruby/psych/commit/e6ad12b4e1
6 days[ruby/psych] Use pend instead of skipHiroshi SHIBATA
https://github.com/ruby/psych/commit/efd2a62c9a
6 days[ruby/psych] Fixed test-case for NaNHiroshi SHIBATA
https://github.com/ruby/psych/commit/f85a008263