summaryrefslogtreecommitdiff
path: root/spec/ruby
AgeCommit message (Collapse)Author
2020-05-09Fix a typo [ci skip]Kazuhiro NISHIYAMA
2020-05-03Update to ruby/spec@032ee74Benoit Daloze
2020-05-03Show unreserved bits onlyNobuyoshi Nakada
`RUBY_FL_SEEN_OBJ_ID` can be set by #object_id.
2020-05-03spec/ruby/core/process/clock_getres_spec.rb: lax the resolution limitYusuke Endoh
Android is Linux, but the clock resolution is 10 milliseconds. I think that 1 microsecond is too strict for embedded environment. This change laxes the limit to 10 milliseconds.
2020-05-03DO NOT CORRUPT TYPE FLAGSNobuyoshi Nakada
2020-05-03Fixed missing `should`Nobuyoshi Nakada
2020-05-02append newline at EOF [ci skip]Nobuyoshi Nakada
2020-05-02Command failed to run just failsNobuyoshi Nakada
The exact exit status value of command failed to run is not a spec, but a platform dependent implementation detail. Just it is not "success".
2020-05-02Fix ObjectSpace::WeakMap#key? to work if the value is nilBenoit Daloze
* Fixes [Bug #16826]
2020-05-02Update to ruby/spec@d394dfdBenoit Daloze
2020-05-01Fixed a message and version guard then moved to the existing blockNobuyoshi Nakada
2020-05-01Fix a typoTakashi Kokubun
2020-05-01Fix matrix spec for 7d360efe92d2db11a4e51820ed2f52de36b3257fTakashi Kokubun
2020-04-29[ruby/spec] Temporary directories should be under the mock_dirNobuyoshi Nakada
2020-04-26[ruby/spec] Removed space between method name and argument list parenNobuyoshi Nakada
2020-04-26[ruby/spec] Fixed missing shouldNobuyoshi Nakada
2020-04-19Skip Process#clock_getres specs on AndroidYusuke Endoh
... just like AIX and OpenBSD.
2020-04-17Removed NIL/TRUE/FALSENobuyoshi Nakada
Deprerecated constants which had been warned since 2.4.
2020-04-10Endless method definition [Feature #16746]Nobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/2996
2020-04-10Turn class variable warnings into exceptionsJeremy Evans
This changes the following warnings: * warning: class variable access from toplevel * warning: class variable @foo of D is overtaken by C into RuntimeErrors. Handle defined?(@@foo) at toplevel by returning nil instead of raising an exception (the previous behavior warned before returning nil when defined? was used). Refactor the specs to avoid the warnings even in older versions. The specs were checking for the warnings, but the purpose of the related specs as evidenced from their description is to test for behavior, not for warnings. Fixes [Bug #14541] Notes: Merged: https://github.com/ruby/ruby/pull/2987
2020-04-08Suppress -Wshorten-64-to-32 warningsNobuyoshi Nakada
2020-04-08Merge pull request #2991 from shyouhei/ruby.h卜部昌平
Split ruby.h Notes: Merged-By: shyouhei <shyouhei@ruby-lang.org>
2020-04-06Use `rb_warn_deprecated` for `File.exists?` and `Dir.exists?`Nobuyoshi Nakada
2020-04-04Fixed the location of the shared libraryNobuyoshi Nakada
On platform where searchs shared libraries by `PATH` environment variable (i.e., Windows), the shared library is installed in `bindir`. On other platforms, the library directory is directed by `libdirname` indirectly.
2020-04-04rbconfig_spec.rb: removed needless windows guardNobuyoshi Nakada
This reverts commit 34b0a7be0ed2fd4ca4d1d509a22964b5e61dfe34.
2020-04-04Update to ruby/spec@7289ea3Benoit Daloze
2020-04-03Use `platform_is` guardNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/2997
2020-04-03Refined "Drop support for ruby 2.4 from ruby/spec"Nobuyoshi Nakada
By using spec/mspec/tool/remove_old_guards.rb. Notes: Merged: https://github.com/ruby/ruby/pull/2997
2020-04-02Update to ruby/spec@cc7b9e5Benoit Daloze
2020-04-03Removed obsolete namesNobuyoshi Nakada
2020-04-01Drop support for ruby 2.4 from ruby/specNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/2892
2020-04-01Use FrozenError instead of frozen_error_classNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/2892
2020-03-29spec/ruby/core/time/: Use near time for timezone testYusuke Endoh
`time_with_zone.zone.should == (time_with_zone - 60*60).zone` fails when the time is immediately before the change of summer time. https://rubyci.org/logs/rubyci.s3.amazonaws.com/unstable11s/ruby-master/log/20200328T232504Z.fail.html.gz ``` 1) Time#+ preserves time zone FAILED Expected "CET" == "CEST" to be truthy but was false ``` It is acceptable as it fails at most twice per year, but it would be good to use near time objects to reduce the possibility.
2020-03-28Increase the number of Process.times attemptsTakashi Kokubun
CI of 5806c54447439f2ba22892e4045e78dd80f96f0c did not succeed https://travis-ci.org/github/ruby/ruby/jobs/668072714
2020-03-28Improve reliability of the Process.times specBenoit Daloze
2020-03-28Do not check that #stime changes in Process.times specBenoit Daloze
* Since the spec might not spend any time in system calls.
2020-03-28Remove debugging codeBenoit Daloze
2020-03-28Remove Process.clock_getres "matches the resolution in practice" specsBenoit Daloze
* Almost all platforms return incorrect values for Process.clock_getres, it should be removed: https://bugs.ruby-lang.org/issues/16740
2020-03-28Remove spec which is an incorrect usage of rb_rescue2()Benoit Daloze
* It segfaults on MRI.
2020-03-28spec/ruby/library/rbconfig/rbconfig_spec.rb: restore "not windows" guardYusuke Endoh
https://github.com/ruby/ruby/runs/541455267 ``` 1) RbConfig::CONFIG libdir/LIBRUBY_SO is the path to libruby and it exists if and only if ENABLE_SHARED FAILED Expected File.exist? "d:/Ruby26-x64/lib/x64-msvcrt-ruby260.dll" to be truthy but was false D:/a/ruby/ruby/src/spec/ruby/library/rbconfig/rbconfig_spec.rb:46:in `block (3 levels) in <top (required)>' D:/a/ruby/ruby/src/spec/ruby/library/rbconfig/rbconfig_spec.rb:4:in `<top (required)>' ```
2020-03-28Fixed RbConfig spec for multiarchNobuyoshi Nakada
2020-03-28Guard RbConfig spec unless installedNobuyoshi Nakada
2020-03-28spec/ruby/optional/capi/kernel_spec.rb: stop a spec that causes SEGVYusuke Endoh
I think the wrong terminating argument cannot work. To stop the noisy CI failures, the spec is tentatively suspended.
2020-03-28Update to ruby/spec@ec84479Benoit Daloze
2020-03-24Show failed timesNobuyoshi Nakada
2020-03-23Try to avoid random failures on clock_getres_spec.rbTakashi Kokubun
This spec fails too often https://github.com/ruby/ruby/runs/529546249 https://github.com/ruby/ruby/runs/524933256
2020-03-22Support obj.clone(freeze: true) for freezing cloneJeremy Evans
This freezes the clone even if the receiver is not frozen. It is only for consistency with freeze: false not freezing the clone even if the receiver is frozen. Because Object#clone is now partially implemented in Ruby and not fully implemented in C, freeze: nil must be supported to provide the default behavior of only freezing the clone if the receiver is frozen. This requires modifying delegate and set, to set freeze: nil instead of freeze: true as the keyword parameter for initialize_clone. Those are the two libraries in stdlib that override initialize_clone. Implements [Feature #16175] Notes: Merged: https://github.com/ruby/ruby/pull/2969
2020-03-21Removed non-RUBY_INTEGER_UNIFICATION codeNobuyoshi Nakada
2020-03-16`Proc` made by `Hash#to_proc` should be a lambda [Bug #12671]Yusuke Endoh
Like `Symbol#to_proc` (f0b815dc670b61eba1daaa67a8613ac431d32b16)
2020-03-16hash.c: Do not use the fast path (rb_yield_values) for lambda blocksYusuke Endoh
As a semantics, Hash#each yields a 2-element array (pairs of keys and values). So, `{ a: 1 }.each(&->(k, v) { })` should raise an exception due to lambda's arity check. However, the optimization that avoids Array allocation by using rb_yield_values for blocks whose arity is more than 1 (introduced at b9d29603375d17c3d1d609d9662f50beaec61fa1 and some commits), seemed to overlook the lambda case, and wrongly allowed the code above to work. This change experimentally attempts to make it strict; now the code above raises an ArgumentError. This is an incompatible change; if the compatibility issue is bigger than our expectation, it may be reverted (until Ruby 3.0 release). [Bug #12706]