aboutsummaryrefslogtreecommitdiffstats
path: root/test/ruby/test_object.rb
Commit message (Collapse)AuthorAgeFilesLines
* should not copy promoted flags.ko12017-08-011-0/+10
| | | | | | | | | | | | * include/ruby/ruby.h (rb_clone_setup): should not copy some flags (FL_PROMOTED0|FL_PROMOTED1|FL_FINALIZE). [Bug #13775] * test/ruby/test_object.rb: add a test (note that this test will fail only when RGENGC_CHECK_MODE >= 2). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59457 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* object.c: use a sized enumerator with #yield_selfnobu2017-05-141-1/+3
| | | | | | | | | | * object.c (rb_obj_size): The #yield_self Enumerator instance always has a #count of `1`. This provides a lazy #size of `1` to match the count instead of `nil`. [Fix GH-1615] Author: Shannon Skipper <shannonskipper@gmail.com> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58714 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* object.c: Kernel#yield_selfnobu2017-05-011-0/+8
| | | | | | | | * object.c (rb_obj_yield_self): new method which yields the receiver and returns the result. [ruby-core:46320] [Feature #6721] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58528 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* object.c: message encodingnobu2017-02-211-0/+4
| | | | | | * object.c (rb_obj_clone2): preserve encoding in error messages. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57679 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* object.c: no TypeError at Symbolnobu2017-01-231-0/+4
| | | | | | | | * object.c (special_object_p): uninterned Symbol also should not raise a TypeError but return itself instead, as well as interned Symbols. [ruby-core:79216] [Bug #13145] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57407 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* object.c: no TypeError at special constnobu2016-11-291-0/+4
| | | | | | | * object.c (special_object_p): no longer raise a TypeError for Integer and Float, and return itself instead. [Feature#12979] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56933 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* object.c: no TypeError at special const clonenobu2016-11-291-0/+11
| | | | | | | | * object.c (rb_obj_clone2): no longer raise a TypeError for special constants, and return itself instead. however, if freeze option is false, raise an ArgumentError. [Feature#12979] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56929 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* object.c: no TypeError at special const dupnobu2016-11-271-3/+3
| | | | | | | * object.c (rb_obj_dup): no longer raise a TypeError for special constants, and return itself instead. [Feature#12979] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56906 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * remove trailing spaces.svn2016-08-011-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55787 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Object#clone with freeze: false [Feature #12300]shyouhei2016-08-011-0/+16
| | | | | | | | | | | | * object.c (rb_obj_clone2): Allow Object#clone to take freeze: false keyword argument to not freeze the clone. [ruby-core:75017][Feature #12300] * test/ruby/test_object.rb (TestObject): test for it. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55786 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* assertions.rb: set default internal encodingnobu2016-04-091-8/+4
| | | | | | | | | | * test/lib/test/unit/assertions.rb (assert_raise_with_message): set default internal encoding to the excpected message, which affects String#inspect in messages. * test/lib/test/unit/assertions.rb (assert_warning): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54522 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test/ruby: suppress parser warningsnobu2016-02-191-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53872 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Add frozen_string_literal: false for all filesnaruse2015-12-161-0/+1
| | | | | | When you change this to true, you may need to add more tests. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53141 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* string.c: should not taint fstringnobu2015-12-041-0/+10
| | | | | | | | * string.c (rb_obj_as_string): fstring should not be infected. re-apply r52872 and fix a typo. TODO: other frozen strings also may not be. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52882 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Revert r52872 "string.c: should not taint fstring"naruse2015-12-041-9/+0
| | | | | | This reverts commit b887c7c20ab81b50ed7cb8c7db3218c443985d6b. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52878 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* string.c: should not taint fstringnobu2015-12-031-0/+9
| | | | | | | * string.c (rb_obj_as_string): fstring should not be infected. TODO: other frozen strings also may not be. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52872 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_mixed_unicode_escapes.rb: fixed typo.hsbt2015-12-031-1/+1
| | | | | | | | [fix GH-1122] Patch by @davydovanton * test/ruby/test_object.rb: ditto. * test/socket/test_tcp.rb: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52870 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_object.rb: add more checksnobu2015-10-301-4/+6
| | | | | | | * test/ruby/test_object.rb (test_remove_instance_variable): refine failure message and check the name. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52379 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* variable.c (generic_ivar_remove): return original valuenormal2015-10-301-4/+16
| | | | | | | | | | | | | This fixes a bug introduced in r50678 ("variable.c: use indices for generic ivars") and does not affect any released version of Ruby * variable.c (generic_ivar_remove): adjust type, set valp (rb_obj_remove_instance_variable): simplify call * test/ruby/test_object.rb (test_remove_instance_variable): expand for implementation details git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52378 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* encoding for inspectnobu2015-10-281-4/+8
| | | | | | | * test/ruby/test_{exception,module,object}.rb: inspect result depend on the default external encoding. [Feature #10881] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52323 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_object.rb: use assert_separatelynobu2015-07-011-5/+3
| | | | | | | | * test/ruby/test_object.rb (test_redef_method_missing): use assert_separately to catch segfaults and show the diagnostic reports. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51086 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_object.rb: add tests for Kernel#String and Kernel#Array.gogotanaka2015-04-221-0/+4
| | | | | | [fix GH-879][fix GH-880] Patch by @yui-knk git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50368 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_object.rb: renamed tests to explicitly class name.hsbt2015-04-211-2/+2
| | | | | | [fix GH-877] Patch by @yui-knk git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50365 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_object.rb: no RSS checknobu2014-12-131-1/+1
| | | | | | | * test/ruby/test_object.rb (test_copied_ivar_memory_leak): ignore RSS to disable false failure. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48821 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vm_method.c: preserve encodingsnobu2014-11-251-0/+13
| | | | | | | * vm_method.c (rb_mod_remove_method): preserve encodings of method name and class name in error messages. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48576 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* object.c: preserve encodingsnobu2014-11-251-2/+4
| | | | | | | * object.c (inspect_i): preserve encodings in inspected result string. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48574 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/lib/envutil.rb: Moved from test/ruby/.akr2014-11-131-1/+0
| | | | | | | | | | | | | | * test/lib/find_executable.rb: Ditto. * test/lib/memory_status.rb: Ditto. * test/lib/test/unit.rb: require envutil. * test/: Don't require envutil in test files. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48409 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_object.rb: Specify an exception class for rescue clause.akr2014-11-111-1/+1
| | | | | | | | | | | * test/dbm/test_dbm.rb: Ditto. * test/gdbm/test_gdbm.rb: Ditto. * test/sdbm/test_sdbm.rb: Ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48383 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_object.rb: for r48118nobu2014-10-231-2/+5
| | | | | | | * test/ruby/test_object.rb: assertion for r48118. defined method should be called. [Bug #10421] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48120 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_object.rb: avoid confusing ruby-mode.elnobu2014-10-231-3/+3
| | | | | | | * test/ruby/test_object.rb: get rid of confusing ruby-mode.el string highlight. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48112 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vm_method.c: no redefinition warnings for undefined methodsnobu2014-10-231-0/+6
| | | | | | | | * vm_method.c (rb_method_entry_make): warn redefinition only for already defined methods, but not for undefined methods. [ruby-dev:48691] [Bug #10421] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48111 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * .travis.yml: added new configurations for osx on travis ci.hsbt2014-09-201-1/+1
| | | | | | | [fix GH-723] * test/ruby/test_object.rb: tweaked to memory leak limit for osx build. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47651 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* error.c: preserve encodingnobu2014-09-191-0/+11
| | | | | | | * error.c (rb_error_frozen_object): preserve encoding of class name in error message. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47634 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_object.rb: add assertionsnobu2014-09-111-0/+3
| | | | | | | * test/ruby/test_object.rb (test_freeze_immediate): assertions for [Feature #8923]. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47525 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_object.rb: extend timeout.ko12014-09-091-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47460 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* object.c: fix memory leaknobu2014-09-031-0/+10
| | | | | | | * object.c (rb_obj_copy_ivar): allocate no memory for empty instance variables. [ruby-core:64700] [Bug #10191] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47372 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* object.c: Object#itsefnobu2014-08-021-0/+6
| | | | | | | | | * object.c (rb_obj_itself): new method Object#itsef. based on the patch by Rafael França in [ruby-core:64156]. [EXPERIMENTAL] this method may be renamed due to compatibilities. [ruby-core:44704] [Feature #6373] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47028 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby: get rid of warnings.usa2014-03-051-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45273 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* assertions.rb: assert_thrownobu2013-12-241-2/+2
| | | | | | | * lib/test/unit/assertions.rb (assert_throw): make an alias of assert_throws. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44379 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test/ruby: better assertionsnobu2013-12-131-2/+2
| | | | | | * test/ruby: use better assertions instead of mere assert. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44173 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test/unit/assertions.rb: return exceptionnobu2013-10-091-7/+4
| | | | | | | | | * lib/test/unit/assertions.rb (assert_raise_with_message): return raised exception same as assert_raise. * test/ruby, test/-ext-: use assert_raise_with_message. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43212 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* parse.y: junk sigil only namesnobu2013-09-201-0/+6
| | | | | | | | * parse.y (intern_str): sigil only names are junk, at least one identifier character is needed. [ruby-dev:47723] [Bug #8928] * parse.y (rb_enc_symname_type): fix out of bound access. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42988 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/-ext-/test_printf.rb, test/rss/test_parser.rb,shugo2013-06-131-17/+21
| | | | | | | | | | test/ruby/test_array.rb, test/ruby/test_hash.rb, test/ruby/test_m17n.rb, test/ruby/test_marshal.rb, test/ruby/test_object.rb, test/ruby/test_string.rb: don't use untrusted?, untrust, and trust to avoid warnings in case $VERBOSE is true. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41271 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * safe.c (rb_set_safe_level, safe_setter): raise an ArgumentErrorshugo2013-06-121-141/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | when $SAFE is set to 4. $SAFE=4 is now obsolete. [ruby-core:55222] [Feature #8468] * object.c (rb_obj_untrusted, rb_obj_untrust, rb_obj_trust): Kernel#untrusted?, untrust, and trust are now deprecated. Their behavior is same as tainted?, taint, and untaint, respectively. * include/ruby/ruby.h (OBJ_UNTRUSTED, OBJ_UNTRUST): OBJ_UNTRUSTED() and OBJ_UNTRUST() are aliases of OBJ_TAINTED() and OBJ_TAINT(), respectively. * array.c, class.c, debug.c, dir.c, encoding.c, error.c, eval.c, ext/curses/curses.c, ext/dbm/dbm.c, ext/dl/cfunc.c, ext/dl/cptr.c, ext/dl/dl.c, ext/etc/etc.c, ext/fiddle/fiddle.c, ext/fiddle/pointer.c, ext/gdbm/gdbm.c, ext/readline/readline.c, ext/sdbm/init.c, ext/socket/ancdata.c, ext/socket/basicsocket.c, ext/socket/socket.c, ext/socket/udpsocket.c, ext/stringio/stringio.c, ext/syslog/syslog.c, ext/tk/tcltklib.c, ext/win32ole/win32ole.c, file.c, gc.c, hash.c, io.c, iseq.c, load.c, marshal.c, object.c, proc.c, process.c, random.c, re.c, safe.c, string.c, thread.c, transcode.c, variable.c, vm_insnhelper.c, vm_method.c, vm_trace.c: remove code for $SAFE=4. * test/dl/test_dl2.rb, test/erb/test_erb.rb, test/readline/test_readline.rb, test/readline/test_readline_history.rb, test/ruby/test_alias.rb, test/ruby/test_array.rb, test/ruby/test_dir.rb, test/ruby/test_encoding.rb, test/ruby/test_env.rb, test/ruby/test_eval.rb, test/ruby/test_exception.rb, test/ruby/test_file_exhaustive.rb, test/ruby/test_hash.rb, test/ruby/test_io.rb, test/ruby/test_method.rb, test/ruby/test_module.rb, test/ruby/test_object.rb, test/ruby/test_pack.rb, test/ruby/test_rand.rb, test/ruby/test_regexp.rb, test/ruby/test_settracefunc.rb, test/ruby/test_struct.rb, test/ruby/test_thread.rb, test/ruby/test_time.rb: remove tests for $SAFE=4. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41259 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * object.c (rb_obj_ivar_set): call to_str for string only once.naruse2013-04-081-0/+19
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40178 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* object.c: avoid inadvertent symbol creationnobu2013-04-041-0/+6
| | | | | | * object.c (rb_mod_cvar_set): fix typo. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40114 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* r39766 denied to initialized already initialized time objectnaruse2013-03-151-1/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39769 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* class.c: from the origin classnobu2013-03-131-0/+9
| | | | | | | * class.c (rb_obj_singleton_methods): collect methods from the origin class. [ruby-core:53207] [Bug #8044] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39744 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * object.c: Improve error for failed implicit conversions [Bug #7539]marcandre2013-01-291-0/+8
| | | | | | | | * error.c: Adapt rdoc * test/ruby/test_object.rb: Test for above git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38979 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vm_eval.c: public_send does not consider how it is callednobu2012-12-051-0/+2
| | | | | | | | | | * vm_eval.c (rb_method_call_status): use Qundef as no self instead of the current self. * vm_eval.c (send_internal): public_send does not consider how it is called, as mentioned in r14173. patched by charliesome (Charlie Somerville). [ruby-core:50489] [Bug #7499] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38223 b2dd03c8-39d4-4d8f-98ff-823fe69b080e