aboutsummaryrefslogtreecommitdiffstats
path: root/test
Commit message (Collapse)AuthorAgeFilesLines
* * fix namespace issue on singleton class expressions. [Bug #10943]ko12015-03-061-0/+120
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * vm_core.h, method.h: remove rb_iseq_t::cref_stack. CREF is stored to rb_method_definition_t::body.iseq_body.cref. * vm_insnhelper.c: modify SVAR usage. When calling ISEQ type method, push CREF information onto method frame, SVAR located place. Before this fix, SVAR is simply nil. After this patch, CREF (or NULL == Qfalse for not iseq methods) is stored at the method invocation. When SVAR is requierd, then put NODE_IF onto SVAR location, and NDOE_IF::nd_reserved points CREF itself. * vm.c (vm_cref_new, vm_cref_dump, vm_cref_new_toplevel): added. * vm_insnhelper.c (vm_push_frame): accept CREF. * method.h, vm_method.c (rb_add_method_iseq): added. This function accepts iseq and CREF. * class.c (clone_method): use rb_add_method_iseq(). * gc.c (mark_method_entry): mark method_entry::body.iseq_body.cref. * iseq.c: remove CREF related codes. * insns.def (getinlinecache/setinlinecache): CREF should be cache key because a different CREF has a different namespace. * node.c (rb_gc_mark_node): mark NODE_IF::nd_reserved for SVAR. * proc.c: catch up changes. * struct.c: ditto. * insns.def: ditto. * vm_args.c (raise_argument_error): ditto. * vm_eval.c: ditto. * test/ruby/test_class.rb: add a test. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49874 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/webrick/test_filehandler.rb: on vboxsf (on VirtualBoxko12015-03-061-4/+10
| | | | | | | | | | | | on Windows 7), file name and permissions are strange (can access by short file name and so on). Simply skip on such tests on such FS. To detect strange FS, this patch use a part of code `File.executable?(__FILE__)`. Please correct them if there are better ways. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49871 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_beginendblock.rb: do not change directory.ko12015-03-061-3/+3
| | | | | | | | | Run system command in the directory mounted by vboxfs on Windows 7 and get warning like that "warning: Insecure world writable dir...". git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49870 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vm_eval.c: next super class from the originalnobu2015-03-061-0/+11
| | | | | | | | | * vm_eval.c (vm_call_super): search next super class from the original class, to get rid of infinite recursion with prepending. a patch by Seiei Higa <hanachin AT gmail.com> at [ruby-core:68434]. [ruby-core:68093] [Bug #10847] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/matrix.rb: Add Vector#round. Patch by Jordan Stephens.marcandre2015-03-052-0/+10
| | | | | | [Fixes GH-802] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49866 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_rubyoptions.rb ↵usa2015-03-051-0/+8
| | | | | | | | | (TestRubyOptions#test_command_line_glob_with_dir): test for r49859. see [ruby-core:68430] [Bug #10941] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49865 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm_eval.c (eval_string_with_cref): A binding should keepshugo2015-03-051-16/+23
| | | | | | | | refinements activation information and the refinements should be activated in subsequent eval calls with the binding. [ruby-core:67945] [Bug #10818] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49851 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_refinement.rb: There is no need anymore to supressshugo2015-03-051-7/+0
| | | | | | warnings. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49848 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_math.rb (assert_float_and_int): Refactor test casesgogotanaka2015-03-041-46/+21
| | | | | | by introducing assert_float_and_int. [misc #10810] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49843 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* envutil.rb: no need to sleepnobu2015-03-041-1/+0
| | | | | | | | * test/lib/envutil.rb (assert_in_out_err): remove sleep to catch the just time, and it is unnecessary as diagnostic_reports waits for 3 seconds. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49840 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* envutil.rb: diagnostic_reports for SIGTRAPnobu2015-03-041-1/+1
| | | | | | | * test/lib/envutil.rb (EnvUtil.diagnostic_reports): SIGTRAP also generate diagnostic report file. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49837 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mkmf/base.rb: clean up tmpdirnobu2015-03-031-1/+1
| | | | | | | * test/mkmf/base.rb (TestMkmf#assert_separately): call teardown to clean up temporary directory. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49835 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/lib/envutil.rb (EnvUtil.invoke_ruby): need to rescue becauseusa2015-03-031-1/+1
| | | | | | | Signal.signame may raise exception. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49828 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_rubyoptions.rb: use assert_in_out_errnobu2015-03-032-14/+3
| | | | | | | | | | * test/ruby/test_rubyoptions.rb (assert_segv): assert_in_out_err with the pattern list instead of invoke_ruby. * test/-ext-/bug_reporter/test_bug_reporter.rb (test_bug_reporter_add): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49824 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* envutil.rb: improve by assert_pattern_listnobu2015-03-031-1/+3
| | | | | | | | * test/lib/envutil.rb (assert_in_out_err): improve to match by assert_pattern_list if expected result is other than Regexp or String list. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49823 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_process.rb: use assert_in_out_errnobu2015-03-031-17/+3
| | | | | | | * test/ruby/test_process.rb (test_status_quit): use assert_in_out_err to simplify and clean diagnostic reports. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49822 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_math.rb: add tests for the above change.gogotanaka2015-03-031-0/+21
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49819 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_rubyoptions.rb: use assert_segvnobu2015-03-031-18/+6
| | | | | | | * test/ruby/test_rubyoptions.rb (test_segv_loaded_features): use assert_segv to simplify. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49817 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_symbol.rb: avoid a false positive in AIXodaira2015-03-021-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49813 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* envutil.rb: fix typonobu2015-03-021-1/+1
| | | | | | * test/lib/envutil.rb (invoke_ruby): fix typo again. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49809 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* envutil.rb: fix const namenobu2015-03-021-1/+1
| | | | | | * test/lib/envutil.rb (invoke_ruby): fix an exception class name. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49808 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_process.rb: remove intermediate child processnobu2015-03-021-62/+12
| | | | | | | | * test/ruby/test_process.rb (test_deadlock_by_signal_at_forking): spawn the target process directly with assert_separately and remove intermediate child process. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49807 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* envutil.rb: timeout_error argument to invoke_rubynobu2015-03-021-10/+11
| | | | | | | | | | | | | * test/lib/envutil.rb (invoke_ruby): add `timeout_error` optional keyword argument, the exception class to be raised if the target process timed out. if it is nil, no exception will be raised at timeout but the terminated output, error, and status will be returned. defaulted to Timeout::Error. * test/lib/envutil.rb (assert_separately): check outputs and status (including diagnostic reports) of timed-out process. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49806 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* envutil.rb: signal list to invoke_rubynobu2015-03-021-12/+24
| | | | | | | | * test/lib/envutil.rb (invoke_ruby): allow `signal` optional keyword argument to be a list of signals to be sent to the target process. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49805 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* signal.c: nil for invalid signumnobu2015-03-021-0/+9
| | | | | | | * signal.c (sig_signame): return nil if the argument is a valid signal number. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49801 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/net/ftp/test_ftp.rb (create_ftp_server): set SO_OOBINLINEngoto2015-03-021-4/+5
| | | | | | | | | | for receiving OOB data which is sended with MSG_OOB flag in portable way. [Bug #10915] [ruby-dev:48885] * test/net/ftp/test_ftp.rb (test_abort, test_status): use gets for receiving OOB data in portable way. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49800 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* io/wait: fix return value for buffered readnormal2015-03-011-1/+1
| | | | | | | | | | * ext/io/wait/wait.c (io_nread): wrap return value with INT2FIX Thanks to Yura Sokolov <funny.falcon@gmail.com> [ruby-core:68369] [Bug#10923] * test/io/wait/test_io_wait.rb (test_nread_buffered): fix broken test git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49797 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* envutil.rb: signal argumentnobu2015-03-011-1/+1
| | | | | | | * test/lib/envutil.rb (invoke_ruby): add optional keyword argument of signal to be sent to hung-up process. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49795 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* add tests for strptime("%s.%N").akr2015-03-011-0/+11
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49790 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* enum.c: Fixnum onlynobu2015-02-281-0/+12
| | | | | | | * enum.c (limit_by_enum_size, enum_size_over_p): check only against Fixnum size. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49782 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* enum.c: limit sizenobu2015-02-281-0/+16
| | | | | | | | * enum.c (enum_each_slice, enum_each_cons): limit elements size by the enumerator size. suggested by Hans Mackowiak <hanmac AT gmx.de> at [ruby-core:68335] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49781 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* variable.c: preserve name encoding of subclassnobu2015-02-281-0/+2
| | | | | | | * variable.c (rb_tmp_class_path): preserve name encoding of an anonymous instance of module/class subclass. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49778 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/rubygems: Update to RubyGems 2.4.6 and HEAD(800f2e6).hsbt2015-02-275-31/+56
| | | | | | | Fixed #1159, #1171, #1173 on rubygems/rubygems * test/rubygems: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49774 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/rake: Update to rake (9237e74), typo fix and remove needlesshsbt2015-02-274-10/+10
| | | | | | | private syntax. * test/rake: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49773 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_io.rb: separate platform-specific testsnobu2015-02-261-31/+13
| | | | | | | * test/ruby/test_io.rb: separate platform-specific tests at load time instead of runtime. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49763 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32/Win32API.rb (initialize): accept both a string and an arrayusa2015-02-251-0/+23
| | | | | | | | for the arguments of the imported function. reported by Aaron Stone [ruby-core:68208] [Bug #10876] [Fixes GH-835] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49750 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* dir.c: same encoding to the patternnobu2015-02-251-0/+9
| | | | | | | * dir.c (push_pattern, push_glob): make globbed file names same encoding to the given pattern. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49744 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/cmath.rb (log): raise ArgumentError when more than 2 argumentsgogotanaka2015-02-241-3/+3
| | | | | | are passed. [ruby-core:66143] [Bug #10487] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49729 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_math.rb: Use assert_infinity instead of assert_equal(1.0/0, ↵gogotanaka2015-02-241-4/+33
| | | | | | | | | ...). * test/ruby/test_math.rb: Add tests for overriding Integer#to_f. [ruby-core:67919] [Misc #10809] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49726 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* complex.c: multiply as rotationnobu2015-02-241-0/+7
| | | | | | | * complex.c (nucomp_mul): calculate as rotation in complex plane if matrix calculation resulted in NaN. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49723 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_math.rb(test_cbrt): Add an assertion for Math.cbrt(1.0/0)gogotanaka2015-02-241-7/+8
| | | | | | and move #test_cbrt to more proper place. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49722 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* string.c: smart chompnobu2015-02-241-1/+14
| | | | | | | | * string.c (chompped_length): enable smart chomp for all non-dummy encoding strings, not only default_rs. [ruby-core:68258] [Bug #10893] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49706 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* string.c: proper exceptionnobu2015-02-231-0/+18
| | | | | | | | * string.c (rb_str_split_m): raise ArgumentError at broken string not RegexpError, as Regexp is not involved in. [ruby-core:68229] [Bug #10886] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49695 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * time.c: zone encoding should be US-ASCII if all 7-bits. Fix r46907.eregon2015-02-222-3/+7
| | | | | | * test/ruby/test_time.rb, test/ruby/test_time_tz.rb: Update tests. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49693 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm_insnhelper.c (rb_vm_rewrite_cref_stack): copy nd_refinementsktsj2015-02-221-0/+28
| | | | | | | | | | | of orignal crefs. It fixes segmentation fault when calling refined method in duplicate module. [ruby-dev:48878] [Bug #10885] * vm_core.h, class.c: change accordingly. * test/ruby/test_refinement.rb: add a test for above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49685 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* re.c: RMatch::regexp can be nilnobu2015-02-211-0/+13
| | | | | | | * re.c (match_aref): RMatch::regexp is Qnil after matching by a string since r45451. [ruby-core:68209] [Bug #10877] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49675 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* file.c: fix handle leaknobu2015-02-201-0/+2
| | | | | | | * file.c (rb_file_identical_p): fix handle leak, ensure to close the handle of the first argument. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49664 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_file_exhaustive.rb: tests for File.identical?nobu2015-02-201-1/+16
| | | | | | | * test/ruby/test_file_exhaustive.rb (test_path_identical_p): rename and add other tests for File.identical? method. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49662 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_file_exhaustive.rb: remove useless assignmentnobu2015-02-201-1/+1
| | | | | | | * test/ruby/test_file_exhaustive.rb (make_tmp_filename): not assign to instance variable, @hardlinkfile. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49661 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_file.rb: just skip assertionnobu2015-02-201-2/+4
| | | | | | | * test/ruby/test_file.rb (TestFile#test_stat): skip an assertion only, not making the entire test skipped git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49660 b2dd03c8-39d4-4d8f-98ff-823fe69b080e