ruby-changes:16001
From: suke <ko1@a...>
Date: Fri, 21 May 2010 23:53:34 +0900 (JST)
Subject: [ruby-changes:16001] Ruby:r27948 (ruby_1_9_2): merged from trunk (r27922)
suke 2010-05-21 23:53:13 +0900 (Fri, 21 May 2010) New Revision: 27948 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=27948 Log: merged from trunk (r27922) * ext/win32ole/win32ole.c (ole_invoke): merged from trunk (r27922). raise NoMethodError when COM method is not found. * test/win32ole/test_win32ole.rb (test_no_method_error): ditto. Modified files: branches/ruby_1_9_2/ChangeLog branches/ruby_1_9_2/ext/win32ole/win32ole.c branches/ruby_1_9_2/test/win32ole/test_win32ole.rb Index: ruby_1_9_2/ChangeLog =================================================================== --- ruby_1_9_2/ChangeLog (revision 27947) +++ ruby_1_9_2/ChangeLog (revision 27948) @@ -1,3 +1,10 @@ +Fri May 21 23:46:43 2010 Masaki Suketa <masaki.suketa@n...> + + * ext/win32ole/win32ole.c (ole_invoke): merged from trunk (r27922). + raise NoMethodError when COM method is not found. + + * test/win32ole/test_win32ole.rb (test_no_method_error): ditto. + Fri May 21 19:11:42 2010 Nobuyoshi Nakada <nobu@r...> * ext/nkf/nkf.c (rb_nkf_convert, rb_nkf_guess): check too huge Index: ruby_1_9_2/ext/win32ole/win32ole.c =================================================================== --- ruby_1_9_2/ext/win32ole/win32ole.c (revision 27947) +++ ruby_1_9_2/ext/win32ole/win32ole.c (revision 27948) @@ -3347,7 +3347,7 @@ &wcmdname, 1, lcid, &DispID); SysFreeString(wcmdname); if(FAILED(hr)) { - ole_raise(hr, eWIN32OLERuntimeError, + ole_raise(hr, rb_eNoMethodError, "unknown property or method: `%s'", StringValuePtr(cmd)); } Index: ruby_1_9_2/test/win32ole/test_win32ole.rb =================================================================== --- ruby_1_9_2/test/win32ole/test_win32ole.rb (revision 27947) +++ ruby_1_9_2/test/win32ole/test_win32ole.rb (revision 27948) @@ -55,6 +55,13 @@ assert_match(/^\(in setting property `compareMode': \)/, exc.message) #` end + def test_no_method_error + exc = assert_raise(NoMethodError) { + @dict1.non_exist_method + } + assert_match(/non_exist_method/, exc.message) + end + def test_ole_methods methods = @dict1.ole_methods mnames = methods.collect {|m| -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/