aboutsummaryrefslogtreecommitdiffstats
path: root/spec
Commit message (Collapse)AuthorAgeFilesLines
* Remove rubyspec temporary directoriesNobuyoshi Nakada2020-04-281-3/+15
|
* [ruby/spec] Removed space between method name and argument list parenNobuyoshi Nakada2020-04-265-5/+5
|
* [ruby/spec] Fixed missing shouldNobuyoshi Nakada2020-04-261-1/+1
|
* Support XDG_* (#2174)Hiroshi SHIBATA2020-04-232-3/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Support XDG_CONFIG_HOME for gemrc. * Support XDG_DATA_HOME for .gem * Added test for XDG_DATA_HOME * Do not reuse environmental variable. * Unify .rdoc path to RDoc.home. * Support XDG_DATA_HOME for .rdoc * Ignore exists? * Extracted config_home path * Use XDG_CONFIG_HOME for default credential path * Fixed inconsistency location. * Fixed the broken tests. * Support XDG_CONFIG_HOME for irbrc * Introduce Gem.cache_home as XDG_CACHE_HOME * Use Gem.cache_home instead of Gem.config_home for the credential file of RubyGems. * Initialized the old configurations * Fixed test failure related the configuration initialization * restore XDG_DATA_HOME * Fixed the broken examples of bundler with XDG_* * Do not modify environmental variable on test file * Use XDG_DATA_HOME insted of XDG_CACHE_HOME for credential file * stub out Gem.data_home * Move dir accessor to defaults.rb file * Use XDG_DATA_HOME for signed gem features * Use XDG_DATA_HOME for spec cache * Do not rely on Gem.user_home * Gem.user_home is always exists. Don't need to use FileUitls.mkdir_p * Bump support version to RubyGems 3.2.0+ * Removed the needless fallback configuration * Fixed the inconsistency methods that are find_config_file and config_file * Use Gem.configuration.credentials_path instead of hard-coded path * gem_path is always provided * Removed the duplicated code of find_home * Also removed the duplicated code of user_home * use Gem::UNTAINT instead of untaint for surpressing the warnings * Use File.directory * Restore XDG_DATA_HOME * Use File.write
* Skip Process#clock_getres specs on AndroidYusuke Endoh2020-04-191-2/+2
| | | | ... just like AIX and OpenBSD.
* Removed NIL/TRUE/FALSENobuyoshi Nakada2020-04-171-24/+0
| | | | Deprerecated constants which had been warned since 2.4.
* Endless method definition [Feature #16746]Nobuyoshi Nakada2020-04-101-0/+13
|
* Turn class variable warnings into exceptionsJeremy Evans2020-04-103-21/+17
| | | | | | | | | | | | | | | | | | 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]
* Suppress -Wshorten-64-to-32 warningsNobuyoshi Nakada2020-04-081-1/+1
|
* Merge pull request #2991 from shyouhei/ruby.h卜部昌平2020-04-081-5/+1
| | | Split ruby.h
* Use `rb_warn_deprecated` for `File.exists?` and `Dir.exists?`Nobuyoshi Nakada2020-04-063-27/+0
|
* Fixed the location of the shared libraryNobuyoshi Nakada2020-04-042-6/+6
| | | | | | | 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.
* rbconfig_spec.rb: removed needless windows guardNobuyoshi Nakada2020-04-041-11/+9
| | | | This reverts commit 34b0a7be0ed2fd4ca4d1d509a22964b5e61dfe34.
* Update to ruby/spec@7289ea3Benoit Daloze2020-04-042-5/+16
|
* Update to ruby/mspec@fad32a5Benoit Daloze2020-04-041-1/+0
|
* Use `platform_is` guardNobuyoshi Nakada2020-04-034-4/+4
|
* Refined "Drop support for ruby 2.4 from ruby/spec"Nobuyoshi Nakada2020-04-039-162/+196
| | | | By using spec/mspec/tool/remove_old_guards.rb.
* Refined spec/mspec/tool/remove_old_guards.rbNobuyoshi Nakada2020-04-031-4/+5
| | | | | | * Allow spaces around `...` * Matches quotes more precisely * Matches 0 teeny
* Update to ruby/spec@cc7b9e5Benoit Daloze2020-04-022-9/+4
|
* Update to ruby/mspec@b9fe8d6Benoit Daloze2020-04-021-1/+1
|
* Removed obsolete namesNobuyoshi Nakada2020-04-033-9/+2
|
* Drop support for ruby 2.4 from ruby/specNobuyoshi Nakada2020-04-01144-3227/+2223
|
* Use FrozenError instead of frozen_error_classNobuyoshi Nakada2020-04-01103-385/+367
|
* spec/ruby/core/time/: Use near time for timezone testYusuke Endoh2020-03-293-7/+7
| | | | | | | | | | | | | | | | | `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.
* spec/bundler/other/platform_spec.rb: skip an attempt to simulate JRubyYusuke Endoh2020-03-291-0/+1
|
* Increase the number of Process.times attemptsTakashi Kokubun2020-03-281-1/+1
| | | | | CI of 5806c54447439f2ba22892e4045e78dd80f96f0c did not succeed https://travis-ci.org/github/ruby/ruby/jobs/668072714
* Improve reliability of the Process.times specBenoit Daloze2020-03-281-4/+12
|
* Do not check that #stime changes in Process.times specBenoit Daloze2020-03-281-1/+0
| | | | * Since the spec might not spend any time in system calls.
* Remove debugging codeBenoit Daloze2020-03-281-8/+1
|
* Remove Process.clock_getres "matches the resolution in practice" specsBenoit Daloze2020-03-282-72/+0
| | | | | * Almost all platforms return incorrect values for Process.clock_getres, it should be removed: https://bugs.ruby-lang.org/issues/16740
* Remove spec which is an incorrect usage of rb_rescue2()Benoit Daloze2020-03-282-36/+0
| | | | * It segfaults on MRI.
* spec/ruby/library/rbconfig/rbconfig_spec.rb: restore "not windows" guardYusuke Endoh2020-03-281-9/+11
| | | | | | | | | | | | 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)>' ```
* Fixed RbConfig spec for multiarchNobuyoshi Nakada2020-03-281-6/+7
|
* Guard RbConfig spec unless installedNobuyoshi Nakada2020-03-281-1/+1
|
* spec/ruby/optional/capi/kernel_spec.rb: stop a spec that causes SEGVYusuke Endoh2020-03-281-10/+18
| | | | | I think the wrong terminating argument cannot work. To stop the noisy CI failures, the spec is tentatively suspended.
* Update to ruby/spec@ec84479Benoit Daloze2020-03-2850-377/+739
|
* Update to ruby/mspec@16b5a0aBenoit Daloze2020-03-2820-162/+192
|
* Show failed timesNobuyoshi Nakada2020-03-241-1/+3
|
* Try to avoid random failures on clock_getres_spec.rbTakashi Kokubun2020-03-231-1/+1
| | | | | | This spec fails too often https://github.com/ruby/ruby/runs/529546249 https://github.com/ruby/ruby/runs/524933256
* Support obj.clone(freeze: true) for freezing cloneJeremy Evans2020-03-221-3/+9
| | | | | | | | | | | | | | | | | | 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]
* Removed non-RUBY_INTEGER_UNIFICATION codeNobuyoshi Nakada2020-03-211-18/+0
|
* `Proc` made by `Hash#to_proc` should be a lambda [Bug #12671]Yusuke Endoh2020-03-161-2/+10
| | | | Like `Symbol#to_proc` (f0b815dc670b61eba1daaa67a8613ac431d32b16)
* hash.c: Do not use the fast path (rb_yield_values) for lambda blocksYusuke Endoh2020-03-161-10/+28
| | | | | | | | | | | | | | | | | 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]
* Enclosed version constantNobuyoshi Nakada2020-03-151-3/+5
|
* Added guard against [Bug #16497]Nobuyoshi Nakada2020-03-151-1/+23
|
* [ruby/stringio] StringIO#initialize default to the source string encodingJean Boussier2020-03-151-0/+3
| | | | | | [Bug #16497] https://github.com/ruby/stringio/commit/4958a5ccab
* Update some syslog tests to absurb the format change of FreeBSD syslogYusuke Endoh2020-03-122-7/+6
| | | | | | | | | | | | | | | | | | FreeBSD ``` $ ruby -rsyslog -e 'Syslog.open("rubyspec", Syslog::LOG_PERROR) {|s| s.log(Syslog::LOG_ALERT, "Hello") }' rubyspec 78462 - - Hello ``` Linux ``` $ ruby -rsyslog -e 'Syslog.open("rubyspec", Syslog::LOG_PERROR) {|s| s.log(Syslog::LOG_ALERT, "Hello") }' rubyspec: Hello ``` https://github.com/freebsd/freebsd/commit/591ef7c8076109cff3c41f9bb50da996a34121e9
* Added version guard for OpenSSL::ConfigNobuyoshi Nakada2020-03-102-12/+31
|
* Don't display singleton class in Method#inspect unless method defined thereJeremy Evans2020-03-091-0/+18
| | | | | | | | | | | Previously, if an object has a singleton class, and you call Object#method on the object, the resulting string would include the object's singleton class, even though the method was not defined in the singleton class. Change this so the we only show the singleton class if the method is defined in the singleton class. Fixes [Bug #15608]
* Do not autosplat when calling procs that accept rest and keywordsJeremy Evans2020-03-081-11/+20
| | | | | | | | | When providing a single array to a block that takes a splat, pass the array as one argument of the splat instead of as the splat itself, even if the block also accepts keyword arguments. Previously, this behavior was only used for blocks that did not accept keywords. Implements [Feature#16166]