summaryrefslogtreecommitdiff
path: root/spec/ruby/core
AgeCommit message (Collapse)Author
2019-06-21Add an optional `inherit` argument to Module#autoload?Jean Boussier
[Feature #15777] Closes: https://github.com/ruby/ruby/pull/2173
2019-06-19Remove spec testing undefined behaviorJeremy Evans
Fixes [Bug #15432]
2019-06-19Implement Complex#<=>Jeremy Evans
Implement Complex#<=> so that it is usable as an argument when calling <=> on objects of other classes (since #coerce will coerce such numbers to Complex). If the complex number has a zero imaginary part, and the other argument is a real number (or complex number with zero imaginary part), return -1, 0, or 1. Otherwise, return nil, indicating the objects are not comparable. Fixes [Bug #15857]
2019-06-06Make specs pass on OpenBSDJeremy Evans
Skip Process clockres specs that don't work on either FreeBSD or Solaris/AIX in addition to OpenBSD. Run most current String#crypt specs on non-OpenBSD, and add a new set of crypt specs for OpenBSD, which support bcrypt but not DES in crypt(3). Use @server.connect_address instead of @server.getsockname in some socket tests, as OpenBSD does not treat connection to all zero IPv4 or IPv6 addresses as connection to localhost. When trying to connect using UDP on an unsupported address family, allow Errno::EPROTONOSUPPORT in addition to Errno::EAFNOSUPPORT, as OpenBSD raises the former.
2019-05-31Update to ruby/spec@cfe908cBenoit Daloze
2019-05-31Let irb use an empty file as irbrcNobuyoshi Nakada
to get rid of side-effect by existing .irbrc file.
2019-05-31UNIX domain socket name length has a certain limitNobuyoshi Nakada
2019-05-28Update to ruby/spec@9a501a8Benoit Daloze
2019-05-26Add FrozenError#receiverJeremy Evans
Similar to NameError#receiver, this returns the object on which the modification was attempted. This is useful as it can pinpoint exactly what is frozen. In many cases when a FrozenError is raised, you cannot determine from the context which object is frozen that you attempted to modify. Users of the current rb_error_frozen C function will have to switch to using rb_error_frozen_object or the new rb_frozen_error_raise in order to set the receiver of the FrozenError. To allow the receiver to be set from Ruby, support an optional second argument to FrozenError#initialize. Implements [Feature #15751]
2019-05-24Add notes for the Process#clock_getres specBenoit Daloze
2019-05-24Only exclude the failing clocks for Process.clock_getres specs on AIXBenoit Daloze
* https://rubyci.org/logs/rubyci.s3.amazonaws.com/aix71_ppc/ruby-trunk/log/20190522T103301Z.fail.html.gz
2019-05-24Skip the Process.clock_getres spec on AIXYusuke Endoh
https://rubyci.org/logs/rubyci.s3.amazonaws.com/aix71_ppc/ruby-trunk/log/20190522T103301Z.fail.html.gz
2019-05-23Add `Time#ceil`.manga_osyo
Closes: https://github.com/ruby/ruby/pull/2133
2019-05-23Adding Enumerable#filter_mapAlfonso Jiménez
[Feature #15323] Closes: https://github.com/ruby/ruby/pull/2017
2019-05-23spec/ruby/core/hash/constructor_spec.rb: add "ruby_version_is" guardYusuke Endoh
follow up for d3f1c615c5
2019-05-23hash.c (rb_hash_s_create): Reject `Hash[[nil]]`Yusuke Endoh
The behavior of `Hash[[nil]] #=> {}` was a bug until 1.9.3, but had been remained with a warning because some programs depended upon it. Now, six years passed. We can remove the compatibility behavior. [Bug #7300]
2019-05-22Eagerly name modules and classesAlan Wu
* variable.c: make the hidden ivars `classpath` and `tmp_classpath` the source of truth for module and constant names. Assign to them when modules are bind to constants. * variable.c: remove references to module name cache, as what used to be the cache is now the source of truth. Remove rb_class_path_no_cache(). * variable.c: remove the hidden ivar `classid`. This existed for the purposes of module name search, which is now replaced. Also, remove the associated rb_name_class(). * class.c: use rb_set_class_path_string to set the name of Object during boot. Must use a fstring as this runs before rb_cString is initialized and creating a normal string leads to a VALUE without a class. * spec/ruby/core/module/name_spec.rb: add a few specs to specify what happens to Module#name across multiple operations. These specs pass without other code changes in this commit. [Feature #15765]
2019-05-20Remove redundant ignore rule for Process#clock_getres specsBenoit Daloze
2019-05-20Move exclusion for Hyper-V next to other skipped constantsBenoit Daloze
2019-05-20skip a test for CLOCK_MONOTONIC_RAW.Koichi Sasada
On my Linux guest machine on Hyper-V, I got an error. Process.clock_gettime(CLOCK_MONOTONIC_RAW, :nanosecond) returns like: ... 875573945119100 875573945119600 ... even if `Process.clock_getres(value, :nanosecond)` returns 1. So I simply skip this test for CLOCK_MONOTONIC_RAW.
2019-05-08Use ruby_bug guardNobuyoshi Nakada
2019-05-08Do not break rubyspec for old RubyTakashi Kokubun
Fixing 7d805e67f3275aef066d77aa9c32bef715c362ed
2019-05-07Avoid triggering autoload in Module#const_defined?(String)Jean Boussier
[Bug #15780]
2019-04-30Skip the spec on Windows because RUBY_EXE is RUNRUBY and it calls ruby as ↵NAKAMURA Usaku
grandchild
2019-04-28CLOCK_MONOTONIC_RAW_APPROX seems less precise than advertised on macOSBenoit Daloze
* https://travis-ci.org/ruby/ruby/builds/525651487
2019-04-28Update to ruby/spec@7de852dBenoit Daloze
2019-04-28Move the check for CentOS CLOCK_MONOTONIC_RAW next to othersBenoit Daloze
* Fixes "No behavior expectation was found in the example" * https://rubyci.org/logs/rubyci.s3.amazonaws.com/centos6/ruby-trunk/log/20190428T093004Z.fail.html.gz
2019-04-28Skip CLOCK_UPTIME_RAW_APPROX since it seems less precise than advertised on ↵Benoit Daloze
macOS * See https://travis-ci.org/ruby/ruby/jobs/525595997
2019-04-28Exclude failing Process.clock_getres specs on AIXBenoit Daloze
2019-04-28Add missing platform guardBenoit Daloze
2019-04-28Skip problematic Process.clock_getres specs on ARMBenoit Daloze
* https://rubyci.org/logs/rubyci.s3.amazonaws.com/scw-9d6766/ruby-trunk/log/20190428T051708Z.fail.html.gz * https://rubyci.org/logs/rubyci.s3.amazonaws.com/scw-ad7f67/ruby-trunk/log/20190428T045405Z.fail.html.gz
2019-04-28Workaround a CentOS bug in Process.clock_getres specsBenoit Daloze
2019-04-28Refactor logic in Process.clock_gettime specBenoit Daloze
2019-04-28Fix typo in specBenoit Daloze
2019-04-28Skip the entire Process.clock_getres spec on FreeBSDBenoit Daloze
* Clocks don't match the reported precision. * https://rubyci.org/logs/rubyci.s3.amazonaws.com/freebsd11zfs/ruby-trunk/log/20190428T093003Z.fail.html.gz
2019-04-27Some Solaris versions seem to only provide millisecond accuracy for ↵Benoit Daloze
CLOCK_REALTIME * https://rubyci.org/logs/rubyci.s3.amazonaws.com/unstable11x/ruby-trunk/log/20190427T182404Z.fail.html.gz
2019-04-27Skip clock_getres spec on BSDBenoit Daloze
* clock_getres() seems to be incorrect on BSD: https://rubyci.org/logs/rubyci.s3.amazonaws.com/freebsd11zfs/ruby-trunk/log/20190427T183003Z.fail.html.gz
2019-04-27Try to more accurately reflect MRI's logic in specs for finding the home if ↵Benoit Daloze
$HOME is unset
2019-04-27Update to ruby/spec@14e6148Benoit Daloze
2019-04-27Update to ruby/spec@15c9619Benoit Daloze
2019-04-23Use an exclusive range for ruby_version_isNobuyoshi Nakada
2019-04-22Fix RUBY_REVISION specTakashi Kokubun
broken by 5da52d1210625fb00acd573b3f32281b4bde1730
2019-04-20Add `Time#floor`nobu
[Feature #15653] [Fix GH-2092] From: manga_osyo <manga.osyo@gmail.com> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67632 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-04-18io.c: warn non-nil $,nobu
* array.c (rb_ary_join_m): warn use of non-nil $,. * io.c (rb_output_fs_setter): warn when set to non-nil value. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67606 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-04-18Suppress warningsnobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67604 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-04-13Proc.new: change deprecation warning for clarity (issue #15539)marcandre
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67519 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-04-03Introduce beginless range [Feature#14799]mame
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67422 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-04-01Fix Float#to_s specs to not depend on the platform representation of doubleseregon
* AIX, Solaris, etc have a different binary representation. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67401 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-03-28Update to ruby/spec@e81b3cderegon
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67361 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-03-27Fix typoskazu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67349 b2dd03c8-39d4-4d8f-98ff-823fe69b080e