summaryrefslogtreecommitdiff
path: root/test/ruby
AgeCommit message (Collapse)Author
2020-02-12Workaround of instance variable on hidden objectNobuyoshi Nakada
Since 9d9aea7fe50f6340829faa105d9ffe08ebaee658, generic instance variables need `iv_index_tbl` in the object's class. As hidden objects, however, have no class, access to the variables causes a segfault. Get rid of that segfault by raising an exception, for the time being.
2020-02-12Isolate the test for Encoding#replicateNobuyoshi Nakada
It has global side effect which cannot be reverted.
2020-02-11Make yield in singleton class definitions in methods a SyntaxErrorJeremy Evans
This behavior was deprecated in 2.7 and scheduled to be removed in 3.0. Calling yield in a class definition outside a method is now a SyntaxError instead of a LocalJumpError, as well. Notes: Merged: https://github.com/ruby/ruby/pull/2901
2020-02-11Restart timer thread even after preparation failedNobuyoshi Nakada
If the timer thread is left stopped, memory crash or segfault can happen.
2020-02-10Fixed duplicated warningNobuyoshi Nakada
As `command_rhs` is always a "value expression", `command_asgn` does not need the same check. Notes: Merged: https://github.com/ruby/ruby/pull/2897
2020-02-09test/ruby/test_thread_queue.rb: add a wait to yield a threadYusuke Endoh
On Arch, sending a signal in a loop seems hardly to yield the execution. ``` 1) Error: TestThreadQueue#test_queue_with_trap: Timeout::Error: execution of assert_in_out_err expired timeout (10 sec) ``` https://rubyci.org/logs/rubyci.s3.amazonaws.com/arch/ruby-master/log/20200209T120002Z.fail.html.gz This change allows the test to pass.
2020-02-09Check if bindable against the refined target [Bug #16617]Nobuyoshi Nakada
2020-02-09Disable GC until VM objects get initialized [Bug #16616]Nobuyoshi Nakada
2020-02-07Show unmatched sequence on failureNobuyoshi Nakada
2020-02-07Made a test more robustNobuyoshi Nakada
Against changes of the `assert_separately` prologue code.
2020-02-07Removed useless empty linesNobuyoshi Nakada
2020-02-04Add the loaded feature after no exception raisedNobuyoshi Nakada
Retrying after rescued `require` should try to load the same library again. [Bug #16607] Notes: Merged: https://github.com/ruby/ruby/pull/2879
2020-02-04Do not warn CR inside string literalNobuyoshi Nakada
2020-02-04Fix inaccuracy in encoding testsLars Kanis
These tests assume Encoding.find('locale') == Encoding.find('external') and fail if they are distinct.
2020-02-03Check type of empty keyword [Bug #16603]Seiei Miyagi
Co-authored-by: Yusuke Endoh <mame@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/2874
2020-01-29skip SEGV (BUG) tests if ENV['RUBY_ON_BUG'] is given.Koichi Sasada
This environment variable can show additional message on BUG.
2020-01-29support multi-run for test/ruby/enc/test_regex_casefold.rbKoichi Sasada
should not mutate test data.
2020-01-29fix test cleanup.Koichi Sasada
should remove pathname.
2020-01-29Revert "srand() should not run in tests."Koichi Sasada
This reverts commit 4d132fa130e16eeb4af4177cfaccc00e05e2f864. There are discussions about using srand() in tests. I'll write a ticket about it and continue to discuss.
2020-01-29Revert "remove debug code."Koichi Sasada
This reverts commit 65768c80beb64a14c3e918f8ed5e41e9349025d0.
2020-01-29restore $LOADED_FEATURES.Koichi Sasada
Dir.tmpdir can return same directory because of rand() value, so we shouldn't rely on different name.
2020-01-29refactoring: use Proc and Constant.Koichi Sasada
2020-01-29ruby_reset_timezone resets leap_second_info.Tanaka Akira
[Bug #15177]
2020-01-28remove debug code.Koichi Sasada
2020-01-28srand() should not run in tests.Koichi Sasada
test_rand.rb calls srand() several times, however it change global rand-sequence (and --seeds doesn't have meaning). This patch makes such tests run in other processes. Notes: Merged: https://github.com/ruby/ruby/pull/2865
2020-01-28use Minitest::Unit.current_repeat_count to skip multi-run.Koichi Sasada
2020-01-28support multi-run for test/ruby/test_time.rbKoichi Sasada
ruby/test_time_tz.rb (not sure only this file affects) changes TZ and it seems to change internal state. This internal state change fails test_2038 and test_timegm on 2nd time execution. At this time I have no idea how to fix this issue, so I skips these tests on 2nd trial. You can try this failure with the following command without this patch. $ make test-all TESTS='--repeat-count=2 ruby/require ruby/time ruby/time_tz'
2020-01-28support multi-run for test/ruby/test_autoload.rbKoichi Sasada
Another test defines Object::A, but it will fail 2nd test.
2020-01-28support multi-run for test/ruby/test_struct.rbKoichi Sasada
Remove Structs to avoid redefinition warnings.
2020-01-28support multi-run for test/ruby/test_settracefunc.rbKoichi Sasada
need to remove Constants.
2020-01-28support multi-run for test/ruby/test_primitive.rbKoichi Sasada
need to redefine some classes.
2020-01-28support multi-run for test/ruby/test_refinement.rbKoichi Sasada
Give up to support multi-run: * test_method_should_use_refinements * test_instance_method_should_use_refinements I hope someone can revisit it.
2020-01-28support multi-run for test/ruby/test_proc.rbKoichi Sasada
Mysterious error: `remove_method(:foo) if method_defined?(:foo)` raise an exception `method `foo' not defined in #<Class:#<TestProc:0x000055d12ff154e0>>` This patch rename the method name foo to foo_arity to solve it.
2020-01-28support multi-run for test/ruby/test_module.rbKoichi Sasada
add cleanup code in some tests.
2020-01-28support multi-run for test/ruby/test_method.rbKoichi Sasada
need to restore a method.
2020-01-28support multi-run for test/ruby/test_marshal.rbKoichi Sasada
need to remove Constants.
2020-01-28support multi-run for test/ruby/test_iseq.rbKoichi Sasada
need to remove a Constant.
2020-01-28support multi-run for test/ruby/test_eval.rbKoichi Sasada
need to remove a Constant.
2020-01-28support multi-run for test/ruby/test_encoding.rbKoichi Sasada
Unique encoding name is required.
2020-01-28support multi-run for ruby/test_const.rbKoichi Sasada
need to redef Constants.
2020-01-28support multi-run for ruby/test_basicinstructions.rbKoichi Sasada
cvar should be initialized at first.
2020-01-28support multi-run for ruby/test_autoload.rbKoichi Sasada
It requires more cleanup.
2020-01-28support multiple run for test/ruby/test_array.Koichi Sasada
test-all supports multiple run with option --repeat-count=2 but test_equal_resize doesn't support it.
2020-01-27Check the encoding of `half:` optionNobuyoshi Nakada
2020-01-27Moved `GC.verify_compaction_references` to gc.rbNobuyoshi Nakada
And fixed a segfault by coercion of `Qundef`, when any keyword argument without `toward:` option is given.
2020-01-25Recheck array length after `to_str` conversionNobuyoshi Nakada
https://hackerone.com/reports/244787
2020-01-25Recheck elements type after `to_str` conversionNobuyoshi Nakada
https://hackerone.com/reports/244786
2020-01-24Do not autosplat when calling proc with empty keyword splatJeremy Evans
With the removal of the splatted argument when using an empty keyword splat, the autosplat code considered an empty keyword splat the same as no argument at all. However, that results in autosplat behavior changing dependent on the content of the splatted hash, which is not what anyone would expect or want. This change always skips an autosplat if keywords were provided. Fixes [Bug #16560] Notes: Merged: https://github.com/ruby/ruby/pull/2861
2020-01-24brace the fact that lchmod(2) can EOPNOTSUPP卜部昌平
Musl libc has this function as a tiny wrapper of fchmodat(3posix). On the other hand Linux kernel does not support changing modes of a symlink. The operation always fails with EOPNOTSUPP. This fchmodat behaviour is defined in POSIX. We have to take care of such exceptions.
2020-01-24reroute musl unistd.h weirdness卜部昌平
Musl is (of course) not glibc. Its confstr(3) does not understand _CS_GNU_LIBC_VERSION. That's fair. Problem is, its unistd.h has that constant defined for unknown reason. We cannot blindly say the libc is glibc by looking at it. Instead we have to kick it, then see if it quacks like a duck. See https://git.musl-libc.org/cgit/musl/tree/include/unistd.h