Commit graph

36 commits

Author SHA1 Message Date
k0kubun
72c62dc086 test_win32ole_event.rb: use better retry strategy
because
21208728/job/lm5k0lxnn51pcljl
seems to fail with just sleeping

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66524 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-24 03:50:39 +00:00
k0kubun
3bfd7f02c7 test_win32ole_event.rb: avoid unlimited retries
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66523 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-24 03:48:32 +00:00
k0kubun
23ffadad69 test_win32ole_event.rb: retry random failure
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66378 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-13 05:59:14 +00:00
k0kubun
e31864a8a0 test_win32ole_event.rb: retry #test_s_new_loop with sleep
It seems to fail randomly:
19963142/job/8gaxepksa0i3b998

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65480 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-01 04:20:26 +00:00
k0kubun
8f43080f4b test_win32ole_event.rb: fire message_loop on retry
because it's failing even after sleeping 31s in total.
19642619/job/pkaj5svr8glk8twt
19641381/job/spdvrptpaq1d5778

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65188 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-20 01:10:09 +00:00
k0kubun
6c415d0163 test/win32ole/test_win32ole_event.rb: wait longer
for unstable spec. I added r64963 but it couldn't rescue:
19451743/job/hg0tyoxbacrrlnsr

Since #test_on_event is especially unstable,
19337514/job/0wp2oe9dkr9gt1bi
19451743/job/hg0tyoxbacrrlnsr
this commit lets it sleep longer as needed.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65030 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-12 09:19:49 +00:00
k0kubun
1ce45a446e test_win32ole_event.rb: sleep longer
to increase the possibility of TestWIN32OLE_EVENT_SWbemSink#test_on_event success.
It seems to randomly fail
19337514/job/0wp2oe9dkr9gt1bi

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64963 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-08 11:59:22 +00:00
ko1
c39bdb798d $SAFE as a process global state. [Feature #14250]
* vm_core.h (rb_vm_t): move `rb_execution_context_t::safe_level` to
  `rb_vm_t::safe_level_` because `$SAFE` is a process (VM) global state.

* vm_core.h (rb_proc_t): remove `rb_proc_t::safe_level` because `Proc`
  objects don't need to keep `$SAFE` at the creation.
  Also make `is_from_method` and `is_lambda` as 1 bit fields.

* cont.c (cont_restore_thread): no need to keep `$SAFE` for Continuation.

* eval.c (ruby_cleanup): use `rb_set_safe_level_force()` instead of access
  `vm->safe_level_` directly.

* eval_jump.c: End procs `END{}` doesn't keep `$SAFE`.

* proc.c (proc_dup): removed and introduce `rb_proc_dup` in vm.c.

* safe.c (rb_set_safe_level): don't check `$SAFE` 1 -> 0 changes.

* safe.c (safe_setter): use `rb_set_safe_level()`.

* thread.c (rb_thread_safe_level): `Thread#safe_level` returns `$SAFE`.
  It should be obsolete.

* transcode.c (load_transcoder_entry): `rb_safe_level()` only returns
  0 or 1 so that this check is not needed.

* vm.c (vm_proc_create_from_captured): don't need to keep `$SAFE` for Proc.

* vm.c (rb_proc_create): renamed to `proc_create`.

* vm.c (rb_proc_dup): moved from proc.c.

* vm.c (vm_invoke_proc): do not need to set and restore `$SAFE`
  for `Proc#call`.

* vm_eval.c (rb_eval_cmd): rename a local variable to represent clearer
  meaning.

* lib/drb/drb.rb: restore `$SAFE`.

* lib/erb.rb: restore `$SAFE`, too.

* test/lib/leakchecker.rb: check `$SAFE == 0` at the end of tests.

* test/rubygems/test_gem.rb: do not set `$SAFE = 1`.

* bootstraptest/test_proc.rb: catch up this change.

* spec/ruby/optional/capi/string_spec.rb: ditto.

* test/bigdecimal/test_bigdecimal.rb: ditto.

* test/fiddle/test_func.rb: ditto.

* test/fiddle/test_handle.rb: ditto.

* test/net/imap/test_imap_response_parser.rb: ditto.

* test/pathname/test_pathname.rb: ditto.

* test/readline/test_readline.rb: ditto.

* test/ruby/test_file.rb: ditto.

* test/ruby/test_optimization.rb: ditto.

* test/ruby/test_proc.rb: ditto.

* test/ruby/test_require.rb: ditto.

* test/ruby/test_thread.rb: ditto.

* test/rubygems/test_gem_specification.rb: ditto.

* test/test_tempfile.rb: ditto.

* test/test_tmpdir.rb: ditto.

* test/win32ole/test_win32ole.rb: ditto.

* test/win32ole/test_win32ole_event.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61510 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-12-28 20:09:24 +00:00
naruse
3e92b635fb Add frozen_string_literal: false for all files
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
2015-12-16 05:07:31 +00:00
nobu
d3b3eff1a9 test_win32ole_event.rb: fix typo [ci skip]
* test/win32ole/test_win32ole_event.rb: fix typo.
  swbemsink_avairable? => swbemsink_available?  [Fix GH-1025]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51908 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-09-21 11:53:41 +00:00
nobu
822c3999d0 test_win32ole_event.rb: skip message
* test/win32ole/test_win32ole_event.rb (exec_notification_query_async):
  add skip message.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51726 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-08-30 07:15:52 +00:00
nobu
e7d578bf58 test_win32ole_event.rb: skip 80041008
* test/win32ole/test_win32ole_event.rb (exec_notification_query_async):
  skip error with OLE error code:80041008, which seems to occur when
  logging in as a non admistrator user.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51725 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-08-30 06:46:16 +00:00
svn
2f4570e742 * remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48922 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-12-22 12:31:59 +00:00
suke
14c5bd12ad * test/win32ole/test_win32ole_event.rb: some tests are
executed on standard Windows OS without ADO.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48921 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-12-22 12:31:45 +00:00
suke
03a6d033af * test/win32ole/test_win32ole_event.rb: test_s_new_exception is
executed on standard Windows OS without ADO.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48909 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-12-21 01:56:04 +00:00
suke
108c4e4495 * ext/win32ole/win32ole.c(fole_s_connect, fole_initialize): raise a
security error with the tainted string object.
* ext/win32ole/win32ole_event.c(ev_advise): ditto.
* test/win32ole/test_win32ole.rb(test_s_new_exc_svr_tainted,
  test_s_new_exc_host_tainted): ditto.
* test/win32ole/test_win32ole_event.rb(test_s_new_exc_tainted): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47274 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-08-25 11:18:17 +00:00
usa
9e5f063138 * test/win32ole: get rid of warnings (unused variable).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45257 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-02 19:21:57 +00:00
usa
7a514fc6f1 * test/win32ole/test_win32ole_event.rb (TestWIN32OLE_EVENT): use
standard skip method to skip tests.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36425 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-18 00:36:01 +00:00
nobu
287a34ae0d * {ext,lib,test}/**/*.rb: removed trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-06 03:56:38 +00:00
suke
1dead12e7f * test/win32ole/test_win32ole_event.rb: rename test class.
* test/win32ole/test_win32ole_variant_outarg.rb: add in order
  to use ADO instead of Internet Explorer.
  remove test/win32ole/test_win32ole_variant_with_ie.rb.

* test/win32ole/orig_data.csv: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20091 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-02 15:41:02 +00:00
suke
2d45869c76 * ext/win32ole/win32ole.c (ole_event_free): invoke IConnectionPoint::Unadvise
before invoking IConnectionPoint::Release.

* test/win32ole/test_win32ole_event.rb, test/win32ole/err_in_callback.rb,
  test/win32ole/test_err_in_callback.rb: Use ActiveX Data Object
  Library instead of InternetExplorer.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20089 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-02 13:22:42 +00:00
suke
e231d67ee1 * ext/win32ole/win32ole.c (hash2named_arg): refactoring.
* ext/win32ole/win32ole.c (ole_invoke, fole_respond_to, ev_on_event,
  fev_off_event): accepts Symbol argument.

* test/win32ole/test_win32ole.rb: ditto.

* test/win32ole/test_win32ole_event.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18324 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-03 10:43:44 +00:00
suke
2e400ad1b8 * ext/win32ole/win32ole.c (Init_win32ole): add
WIN32OLE_EVENT#handler=, WIN32OLE_EVENT#handler

* test/win32ole/test_win32ole_event.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18225 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-26 12:27:57 +00:00
suke
4aec73e1ed * ext/win32ole/win32ole.c (Init_win32ole): add
WIN32OLE_EVENT#off_event.

* test/win32ole/test_win32ole_event.rb: ditto.
	
* test/win32ole/test_win32ole_event.rb: some refactoring.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18214 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-25 11:49:28 +00:00
suke
598fdcb730 * test/win32ole/test_win32ole_event.rb (teardown): fix typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18067 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-14 11:38:09 +00:00
suke
6e0ed5570e * ext/win32ole/win32ole.c (EVENTSINK_Invoke): using hash
to set value to the reference argument of event.

* test/win32ole/test_win32ole_event.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18055 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-13 12:36:26 +00:00
suke
6c62eafc7c * test/win32ole/test_win32ole_event.rb: add test
for WIN32OLE_EVENT#on_event_with_outargs

* test/win32ole/test_win32ole_event.rb(teardown): calling 
  WIN32OLE_EVENT.message_loop


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18035 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-12 00:31:32 +00:00
suke
4f1b06aabd * test/win32ole/test_win32ole_typelib.rb: add some illegal argument test.
* test/win32ole/test_win32ole_type.rb: ditto.

* test/win32ole/test_win32ole_event.rb: ditto.

* test/win32ole/test_win32ole_param.rb: ditto. 
	
* test/win32ole/test_win32ole_method.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18011 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-10 12:22:16 +00:00
suke
4857543691 * ext/win32ole/win32ole.c (find_default_source): bug fix when
OLE object does not have default source interface.

* test/win32ole/test_win32ole_event.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17960 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-08 14:05:38 +00:00
suke
6c32d10c01 * ext/win32ole/win32ole.c (find_default_source): try to
find COCLASS when WIN32OLE object is not COCLASS. 

* test/win32ole/test_win32ole_event.rb: ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17956 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-08 11:13:09 +00:00
suke
b892e3dd1b * ext/win32ole/win32ole.c: avoid creating Ruby object during
GC. thanks to arton <artonx AT yahoo.co.jp>. [ruby-dev:35313]

* test/win32ole/test_win32ole_event.rb: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17821 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-02 15:35:04 +00:00
suke
9ecd43fa98 * ext/win32ole/win32ole.c: add WIN32OLE_EVENT#unadvise.
* test/win32ole/test_win32ole_event.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13341 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-04 11:48:53 +00:00
suke
dd4d9d63f0 * test/win32ole/test_propertyputref.rb (setup): fix typo.
* test/win32ole/test_win32ole_event.rb: should not use
  InternetExplorer.gohome to test.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11664 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-08 13:00:06 +00:00
suke
38321af30c avoid Argument Error.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10383 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-25 08:16:44 +00:00
suke
08b5a86487 * should not test in the environment that does not have win32ole
library.

* CRLF -> LF.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10134 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-05-06 23:40:08 +00:00
suke
2bdd9d6eba ext/win32ole/win32ole.c (add_event_call_back): should not
delete event handler when the event name is not entried.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10125 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-05-01 09:05:08 +00:00