aboutsummaryrefslogtreecommitdiffstats
path: root/test/ruby
Commit message (Collapse)AuthorAgeFilesLines
* * vm_trace.c (rb_tracepoint_attr_method_id):ko12012-11-291-4/+4
| | | | | | | | | | rename TracePoint#id to TracePoint#method_id. * include/ruby/debug.h: ditto. * test/ruby/test_settracefunc.rb: ditto, git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37973 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm_trace.c (rb_tracepoint_attr_defined_class):ko12012-11-291-2/+2
| | | | | | | | | | | rename TracePoint#klass to TracePoint#defined_class. [ruby-core:50187] Re: [ruby-trunk - Feature #6895] * include/ruby/debug.h: ditto. * test/ruby/test_settracefunc.rb: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37972 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test/dl: no warningsnobu2012-11-291-0/+1
| | | | | | | * test/dl/test_base.rb, test/dl/test_c_struct_entry.rb: deprecation warnings make no sense here. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37966 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* remove trailing spaces.nobu2012-11-291-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37965 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_thread.rb (test_thread_status_in_trap): change test fortarui2012-11-281-11/+11
| | | | | | | thread status in trap. now can accept Thread#join and Thread#value in trap. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37939 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm_core.h (enum rb_thread_status): remove THREAD_TO_KILLkosaki2012-11-281-8/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * vm_core.h (struct rb_thread_struct): add to_kill field * thread.c (terminate_i): convert THREAD_TO_KILL to to_kill. * thread.c (rb_threadptr_to_kill): ditto. * thread.c (rb_thread_kill): ditto. * thread.c (rb_thread_wakeup_alive): ditto. * thread.c (thread_list_i): ditto. * thread.c (static const char): ditto. * thread.c (thread_status_name): ditto. * thread.c (rb_thread_status): ditto. * thread.c (rb_thread_inspect): ditto. * vm_backtrace.c (thread_backtrace_to_ary): ditto. * thread.c (rb_threadptr_execute_interrupts): fix thread status overwritten issue. [Bug #7450] [ruby-core:50249] * test/ruby/test_thread.rb (test_hread_status_raise_after_kill): test for the above. * test/ruby/test_thread.rb (test_thread_status_in_trap): test for thread status in trap. * test/ruby/test_thread.rb (test_status_and_stop_p): remove Thread.control_interrupt unsafe test. Thread#kill no longer changes thread status. Instead of, Thread#kill receiver changes their own status when receiving kill signal. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37931 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c (struct rb_mutex_struct): add allow_trap field.kosaki2012-11-281-0/+13
| | | | | | | | | | | | | | * internal.h (rb_mutex_allow_trap): added. * thread.c (rb_mutex_lock, rb_mutex_unlock): check mutex->allow_trap. * thread.c (mutex_sleep): remove trap check because it uses rb_mutex_lock and rb_mutex_unlock internally. * thread.c (rb_mutex_allow_trap): new helper function for the above. * io.c (io_binwrite): mark fptr->write_lock as writable in trap. * test/ruby/test_signal.rb (test_trap_puts): test for the above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37930 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * proc.c: remove Proc#== and Proc#eql?.ko12012-11-281-6/+0
| | | | | | | | | Proc objects compared with thier object ids. * test/ruby/test_proc.rb: remove related test. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c (thread_join): A trap handler check was moved fromkosaki2012-11-281-0/+11
| | | | | | | | | | | thread_join_m because Thread#value should be raised an exception too. * thread.c (thread_join_m): remove trap handler check. * test/ruby/test_thread.rb (test_thread_join_in_trap): add test for thread#value. * NEWS: documentation fix for the above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37918 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (bigdivrem): optimize the way to retry calculation ofmrkn2012-11-271-0/+30
| | | | | | | | | | | | bigdivrem so that the calculation is started from the point where the last interruption was occurred. * bignum.c (bigdivrem1): ditto. * test/ruby/test_bignum.rb: add a test case for rb_bigdivrem in the case that an interruption is occurred during bigdivrem1 is running. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37899 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * eval.c (ruby_cleanup): set thread status to THREAD_KILLEDkosaki2012-11-271-0/+12
| | | | | | | | for preventing thr.raise. * test/ruby/test_thread.rb (test_main_thread_status_at_exit): test for the above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37886 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c (thread_join): raises ThreadError if target theradkosaki2012-11-271-0/+8
| | | | | | | | | is a main thread. * test/ruby/test_thread.rb (test_thread_join_main_thread): test for the above. * NEWS: news for the above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37884 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c (thread_join): raises ThreadError if target threadkosaki2012-11-271-2/+5
| | | | | | | | | is a current thread. * test/ruby/test_thread.rb (test_thread_join_current): test for the above. * NEWS: news for the above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37883 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm_trace.c: rename TracePoint#file and TracePoint#lineko12012-11-261-3/+3
| | | | | | | | | | | | to TracePoint#path and TracePoint#lineno respectively. They are consistent to RubyVM::Backtrace::Location. * include/ruby/debug.h: ditto. * vm_core.h: ditto. * test/ruby/test_settracefunc.rb: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37876 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * array.c: Fix rdoc for Array#delete [#7437]marcandre2012-11-261-0/+8
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37872 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_argf.rb (TestArgf#test_chars): since marshal data isusa2012-11-261-2/+2
| | | | | | | binary, shouldn't pass via text mode. use base64 encoded data. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37862 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm_core.h (rb_thread_struct): added 'in_trap' member for markingkosaki2012-11-261-0/+15
| | | | | | | | | | | | | running trap handler. * signal.c (signal_exec): turn on in_trap when running trap. * thread.c (Init_Thread, thread_create_core): initialize in_trap when creating new threads. * thread.c (thread_join_m): raise ThreadError when running trap handler.Bug [#6416][ruby-core:44956] * test/ruby/test_thread.rb (test_thread_join_in_trap): new test for the above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37852 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * io.c (argf_each_codepoint): add missing ARGF#codepoints [Bug #7438]naruse2012-11-261-0/+24
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37851 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_process.rb (test_setsid): added a few wait forkosaki2012-11-261-4/+6
| | | | | | | preventing that Process.getsid(io.pid) makes Errno::ESRCH. (refix r37844) git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37846 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_process.rb (test_setsid): call Process.getsid fornagachika2012-11-251-2/+4
| | | | | | | child process in child process. because parent process call Process.getsid with io.pid, Errno::ESRCH could be raised. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37844 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Fix test to follow r37838naruse2012-11-251-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37840 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* String#{lines,chars,codepoints,bytes} now return an array.knu2012-11-241-6/+113
| | | | | | | | | | | | | | | | | | | | * string.c (rb_str_each_line, rb_str_lines): String#lines now returns an array instead of an enumerator. Passing a block is deprecated but still supported for backwards compatibility. Based on the patch by yhara. [Feature #6670] * string.c (rb_str_each_char, rb_str_chars): Ditto for String#chars. * string.c (rb_str_each_codepoint, rb_str_codepoints): Ditto for String#codepoints. * string.c (rb_str_each_byte, rb_str_bytes): Ditto for String#bytes. * NEWS: Add notes for the above changes. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37838 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Fix tests of rb_warning().knu2012-11-245-27/+27
| | | | | | | | | | * test/ruby/envutil.rb (Test::Unit::Assertions#assert_warning) (Test::Unit::Assertions#assert_warn), test/ruby/envutil.rb, test/ruby/test_enumerator.rb, test/ruby/test_io_m17n.rb, test/ruby/test_regexp.rb, test/ruby/test_syntax.rb: assert_warn() and assert_warning() are reversed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37836 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_rubyoptions.rb (test_usage, test_usage_long):tadf2012-11-241-6/+3
| | | | | | | reduced, renamed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37832 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm_trace.c (rb_tracepoint_attr_raised_exception): should not checkko12012-11-241-0/+43
| | | | | | | | | | | value before event checking. * vm_trace.c (rb_tracepoint_attr_return_value): ditto. * test/ruby/test_settracefunc.rb: add tests for TracePoint#return_value and TracePoint#raised_exception. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37830 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Fix TestProcess#test_setsidshirosaki2012-11-241-1/+1
| | | | | | | * test/ruby/test_process.rb (TestProcess#test_setsid): "./ruby-trunk" doesn't work on all environments. EnvUtil.rubybin would be suitable. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37829 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * process.c (proc_getsid): adds new method for getting session id.kosaki2012-11-241-0/+15
| | | | | | | | | | | Contributed from fumiyas (Fumiyasu SATOH). Thank you! [Feature #6757] [ruby-dev:45977] * configure.in: adds getsid check. * test/ruby/test_process.rb (TestProcess#test_setsid): new test for the above. * NEWS: news for the above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37825 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ruby.c: wrap descriptionsnobu2012-11-231-0/+5
| | | | | | | * ruby.c (usage): wrap description lines if options are too long. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37818 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ruby.c, test/ruby/test_rubyoptions.rb: revert r37815:r37816.nobu2012-11-231-5/+3
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37817 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_rubyoptions.rb (TestRubyOptions#test_usage2):tadf2012-11-231-3/+5
| | | | | | | revert the previous. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37815 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_rubyoptions.rb: refine assertionnobu2012-11-231-1/+2
| | | | | | | | * test/ruby/test_rubyoptions.rb (TestRubyOptions#test_usage2): refine assertion. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37814 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_rubyoptions.rb: --helpnobu2012-11-231-4/+1
| | | | | | | | * test/ruby/test_rubyoptions.rb (TestRubyOptions#test_usage2): now --help option is for modern terminals. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37813 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Fix cache validity check of requireshirosaki2012-11-221-0/+31
| | | | | | | | | | | | | | * array.c (rb_ary_shared_with_p): fix cache validity check. If #pop or #shift has been called against $: or $", the array will be still shared with the snapshot. We check array length for cache validity. [ruby-core:49518] [Bug #7383] * test/ruby/test_require.rb (TestRequire#test_require_with_array_pop, TestRequire#test_require_with_array_shift): add tests for above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37808 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_rubyoptions.rb: added a test.tadf2012-11-221-0/+11
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37805 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Apply performance improvement to short byte array search.knu2012-11-221-0/+7
| | | | | | | | * re.c (rb_memsearch_ss): Apply performance improvement to short byte array search for platforms without memmem(3). [Feature #6311] [ruby-dev:45530] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37793 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Add some corner cases to tests for String#index.knu2012-11-221-0/+7
| | | | | | | | * test/ruby/test_string.rb (TestString#test_index): Add some corner cases to tests for String#index, which might fail if ruby directly used a buggy memmem(3) implementation. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37792 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_gc.rb (test_profiler_clear): fix wrong methodnari2012-11-211-2/+2
| | | | | | calls [Bug #7419] [ruby-core:49828]. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37791 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (gc_profile_clear): realloc profile records if its size isnari2012-11-211-0/+16
| | | | | | higher than the threshold, GC_PROFILE_RECORD_DEFAULT_SIZE * 2. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37783 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* revert r37710, requested by Tadayoshi Funaba [ruby-dev:46575]shyouhei2012-11-211-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37776 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_m17n_comb.rb (test_str_crypt): Use RbConfig to getnaruse2012-11-201-1/+1
| | | | | | libc's directory. Patched by Vit Ondruch [ruby-core:49763] [Bug #7312] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37773 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix guards for glibc crypt(3) see #7312naruse2012-11-201-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37766 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* remove trailing spaces.nobu2012-11-202-3/+3
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37759 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm_trace.c: rename and add TracePoint APIs.ko12012-11-201-4/+50
| | | | | | | | | | | | | | | | | (1) TracePoint.new(...){...} creates a new trace point but does not make it enable. (2) TracePoint.trace(...){...} creats a new trace point and enable it (same as old behavior). (3) TracePoint#enable make it enable (renamed from TracePoint#retrace). If block given, when enable only in block. (4) TracePoint#disable make it disable (renamed from TracePoint#untrace). If block given, when disable only in block. (5) TracePoint#enabled? returns this trace is enable or not. * test/ruby/test_settracefunc.rb: addd tests. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37753 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm_trace.c: add two methods:ko12012-11-201-42/+73
| | | | | | | | | | | | | | | | | | | | | (1) TracePoint#return_value which returns return value on the :return and :c_return event. (2) TracePoint#raised_exception which returns raised exception value on the :raise event. Eeach methods raise RuntimeError if it is called at unsupported event. Please review and give us feedback until next preview release (Dec/2012) of Ruby 2.0.0. * insns.def, vm.c, vm_eval.c, vm_insnhelper.c, eval.c, thread.c: ditto. * vm_trace.c, vm_core.h: move definition of rb_trace_arg_t from vm_trace.c to vm_core.h. Caller fills rb_trace_arg_t and pass the pointer of this variable. * test/ruby/test_settracefunc.rb: fix tests to test this change. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37752 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_signal.rb (TestSignal#test_signame): fix windowskosaki2012-11-201-3/+3
| | | | | | | | | test failure. Process.kill on windows can't send a signal to another process. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37747 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Don't send INT signal itself.naruse2012-11-201-11/+13
| | | | | | On make test-all, it kills the process. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37736 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * signal.c (sig_signame): implements Signal.signame methodkosaki2012-11-191-0/+18
| | | | | | | | | | [Feature #5613] * test/ruby/test_signal.rb (test_signame): adds test for above * NEWS: add an item about above git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37723 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* struct.c: yield assoc in each_pairnobu2012-11-191-0/+5
| | | | | | | | * struct.c (rb_struct_each_pair): yield associated pairs so that an unsplat argument can get both, for consistency with Hash, OpenStruct, and etc. [ruby-dev:46533] [Bug #7382] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37721 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c: add `Thread#backtrace_locations' method.ko12012-11-191-1/+36
| | | | | | | | | | | | | | | | | | | This method is similart to `caller_locations' method for specific method. And fix to accept `level' and `n' parameters for `Thread#backtrace' and `Thread#backtrace_locations'. `caller' (and `caller_locations') do not return `caller' method frame. However, `Thread#backtrace' (and `Thread#backtrace_locations') return `Thread#backtrace' method frame itself if `Thread.current.backtrace' was called. * vm_backtrace.c: ditto. * internal.h: ditto. * test/ruby/test_backtrace.rb: add tests. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37716 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (rb_cstr_to_inum): should accept underscores oftadf2012-11-181-1/+1
| | | | | | | sequence of two or more when unchecked mode. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37710 b2dd03c8-39d4-4d8f-98ff-823fe69b080e