ruote 0.9.19 → 0.9.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (401) hide show
  1. data/README.txt +16 -6
  2. data/examples/engine_template.rb +6 -43
  3. data/examples/quickstart.rb +87 -0
  4. data/examples/quotereporter.rb +42 -49
  5. data/examples/simple.rb +56 -0
  6. data/lib/openwfe.rb +20 -34
  7. data/lib/openwfe/contextual.rb +45 -36
  8. data/lib/openwfe/def.rb +21 -30
  9. data/lib/openwfe/engine.rb +17 -26
  10. data/lib/openwfe/engine/engine.rb +132 -397
  11. data/lib/openwfe/engine/expool_methods.rb +34 -122
  12. data/lib/openwfe/engine/file_persisted_engine.rb +39 -60
  13. data/lib/openwfe/engine/fs_engine.rb +54 -0
  14. data/lib/openwfe/engine/launch_methods.rb +245 -0
  15. data/lib/openwfe/engine/listener_methods.rb +128 -0
  16. data/lib/openwfe/engine/lookup_methods.rb +156 -0
  17. data/lib/openwfe/engine/participant_methods.rb +60 -52
  18. data/lib/openwfe/engine/status_methods.rb +102 -97
  19. data/lib/openwfe/engine/tc_engine.rb +55 -0
  20. data/lib/openwfe/engine/tt_engine.rb +55 -0
  21. data/lib/openwfe/engine/update_exp_methods.rb +46 -39
  22. data/lib/openwfe/expool/def_parser.rb +196 -0
  23. data/lib/openwfe/expool/errorjournal.rb +51 -219
  24. data/lib/openwfe/expool/errors.rb +69 -0
  25. data/lib/openwfe/expool/expool_pause_methods.rb +32 -43
  26. data/lib/openwfe/expool/expressionpool.rb +398 -594
  27. data/lib/openwfe/expool/expstorage.rb +68 -72
  28. data/lib/openwfe/expool/fs_expstorage.rb +302 -0
  29. data/lib/openwfe/expool/history.rb +54 -38
  30. data/lib/openwfe/expool/journal.rb +24 -38
  31. data/lib/openwfe/expool/journal_replay.rb +20 -36
  32. data/lib/openwfe/expool/representation.rb +62 -78
  33. data/lib/openwfe/expool/tc_expstorage.rb +239 -0
  34. data/lib/openwfe/expool/{threadedexpstorage.rb → threaded_expstorage.rb} +25 -53
  35. data/lib/openwfe/expool/tt_expstorage.rb +55 -0
  36. data/lib/openwfe/expool/wfidgen.rb +23 -43
  37. data/lib/openwfe/expool/yaml_errorjournal.rb +187 -0
  38. data/lib/openwfe/expressions/condition.rb +33 -58
  39. data/lib/openwfe/expressions/environment.rb +62 -76
  40. data/lib/openwfe/expressions/{expressionmap.rb → expression_map.rb} +40 -54
  41. data/lib/openwfe/expressions/expression_tree.rb +265 -0
  42. data/lib/openwfe/expressions/fe_cancel.rb +19 -39
  43. data/lib/openwfe/expressions/fe_command.rb +80 -84
  44. data/lib/openwfe/expressions/fe_concurrence.rb +250 -313
  45. data/lib/openwfe/expressions/fe_cron.rb +38 -55
  46. data/lib/openwfe/expressions/fe_cursor.rb +49 -74
  47. data/lib/openwfe/expressions/fe_define.rb +44 -90
  48. data/lib/openwfe/expressions/fe_do.rb +83 -70
  49. data/lib/openwfe/expressions/fe_equals.rb +17 -35
  50. data/lib/openwfe/expressions/fe_error.rb +103 -0
  51. data/lib/openwfe/expressions/fe_filter.rb +27 -44
  52. data/lib/openwfe/expressions/fe_filter_definition.rb +37 -54
  53. data/lib/openwfe/expressions/fe_fqv.rb +46 -65
  54. data/lib/openwfe/expressions/fe_http.rb +17 -31
  55. data/lib/openwfe/expressions/fe_if.rb +39 -55
  56. data/lib/openwfe/expressions/fe_iterator.rb +25 -42
  57. data/lib/openwfe/expressions/fe_listen.rb +71 -115
  58. data/lib/openwfe/expressions/fe_losfor.rb +34 -43
  59. data/lib/openwfe/expressions/fe_misc.rb +70 -109
  60. data/lib/openwfe/expressions/fe_participant.rb +61 -99
  61. data/lib/openwfe/expressions/fe_reserve.rb +28 -59
  62. data/lib/openwfe/expressions/fe_save.rb +62 -81
  63. data/lib/openwfe/expressions/fe_sequence.rb +45 -70
  64. data/lib/openwfe/expressions/fe_set.rb +22 -40
  65. data/lib/openwfe/expressions/fe_step.rb +22 -37
  66. data/lib/openwfe/expressions/fe_subprocess.rb +34 -55
  67. data/lib/openwfe/expressions/fe_timeout.rb +28 -44
  68. data/lib/openwfe/expressions/fe_wait.rb +142 -36
  69. data/lib/openwfe/expressions/fe_when.rb +22 -46
  70. data/lib/openwfe/expressions/filter.rb +24 -43
  71. data/lib/openwfe/expressions/flowexpression.rb +211 -192
  72. data/lib/openwfe/expressions/iterator.rb +24 -39
  73. data/lib/openwfe/expressions/merge.rb +30 -52
  74. data/lib/openwfe/expressions/raw.rb +168 -384
  75. data/lib/openwfe/expressions/rprocdef.rb +79 -76
  76. data/lib/openwfe/expressions/time.rb +89 -103
  77. data/lib/openwfe/expressions/timeout.rb +98 -92
  78. data/lib/openwfe/expressions/value.rb +43 -69
  79. data/lib/openwfe/extras/engine/ar_engine.rb +58 -0
  80. data/lib/openwfe/extras/engine/db_persisted_engine.rb +37 -57
  81. data/lib/openwfe/extras/engine/dm_engine.rb +59 -0
  82. data/lib/openwfe/extras/expool/ar_expstorage.rb +337 -0
  83. data/lib/openwfe/extras/expool/db_errorjournal.rb +165 -0
  84. data/lib/openwfe/extras/expool/db_expstorage.rb +73 -0
  85. data/lib/openwfe/extras/expool/db_history.rb +163 -0
  86. data/lib/openwfe/extras/expool/dm_expstorage.rb +327 -0
  87. data/lib/openwfe/extras/listeners/jabber_listeners.rb +102 -0
  88. data/lib/openwfe/extras/listeners/jabberlisteners.rb +26 -0
  89. data/lib/openwfe/extras/listeners/sqs_listeners.rb +128 -0
  90. data/lib/openwfe/extras/misc/activityfeed.rb +19 -34
  91. data/lib/openwfe/extras/misc/jabber_common.rb +122 -0
  92. data/lib/openwfe/extras/participants/active_participants.rb +724 -0
  93. data/lib/openwfe/extras/participants/active_resource_participants.rb +213 -0
  94. data/lib/openwfe/extras/participants/activeparticipants.rb +1 -747
  95. data/lib/openwfe/extras/participants/ar_participants.rb +285 -0
  96. data/lib/openwfe/extras/participants/atomfeed_participants.rb +19 -34
  97. data/lib/openwfe/extras/participants/atompub_participants.rb +19 -34
  98. data/lib/openwfe/extras/participants/basecamp_participants.rb +17 -31
  99. data/lib/openwfe/extras/participants/{csvparticipants.rb → decision_participants.rb} +17 -31
  100. data/lib/openwfe/extras/participants/jabber_participants.rb +147 -0
  101. data/lib/openwfe/extras/participants/jabberparticipants.rb +3 -0
  102. data/lib/openwfe/extras/participants/sqs_participants.rb +108 -0
  103. data/lib/openwfe/extras/participants/{twitterparticipants.rb → twitter_participants.rb} +20 -34
  104. data/lib/openwfe/extras/singlecon.rb +56 -0
  105. data/lib/openwfe/filterdef.rb +83 -65
  106. data/lib/openwfe/flowexpressionid.rb +99 -62
  107. data/lib/openwfe/listeners/listener.rb +54 -65
  108. data/lib/openwfe/listeners/listeners.rb +52 -56
  109. data/lib/openwfe/logging.rb +17 -31
  110. data/lib/openwfe/omixins.rb +25 -58
  111. data/lib/openwfe/participants.rb +1 -34
  112. data/lib/openwfe/participants/{enoparticipants.rb → mail_participants.rb} +33 -47
  113. data/lib/openwfe/participants/participant.rb +37 -36
  114. data/lib/openwfe/participants/participant_map.rb +245 -0
  115. data/lib/openwfe/participants/participants.rb +43 -69
  116. data/lib/openwfe/participants/{soapparticipants.rb → soap_participants.rb} +22 -36
  117. data/lib/openwfe/participants/{storeparticipants.rb → store_participants.rb} +57 -62
  118. data/lib/openwfe/{storage/yamlfilestorage.rb → participants/yaml_filestorage.rb} +35 -64
  119. data/lib/openwfe/representations.rb +770 -0
  120. data/lib/openwfe/rudefinitions.rb +17 -29
  121. data/lib/openwfe/service.rb +21 -32
  122. data/lib/openwfe/tools/flowtracer.rb +21 -35
  123. data/lib/openwfe/util/dollar.rb +48 -61
  124. data/lib/openwfe/util/irb.rb +19 -34
  125. data/lib/openwfe/util/json.rb +55 -0
  126. data/lib/openwfe/util/observable.rb +22 -41
  127. data/lib/openwfe/util/ometa.rb +21 -35
  128. data/lib/openwfe/util/treechecker.rb +17 -31
  129. data/lib/openwfe/util/workqueue.rb +45 -44
  130. data/lib/openwfe/util/xml.rb +80 -234
  131. data/lib/openwfe/utils.rb +67 -110
  132. data/lib/openwfe/version.rb +19 -27
  133. data/lib/openwfe/workitem.rb +119 -84
  134. data/lib/openwfe/worklist/storelocks.rb +17 -33
  135. data/lib/openwfe/worklist/storeparticipant.rb +1 -39
  136. data/lib/openwfe/worklist/worklist.rb +17 -31
  137. data/lib/pooltool.ru +311 -0
  138. data/test/{extras/active_connection.rb → ar_test_connection.rb} +26 -11
  139. data/test/bm/fatxml.rb +70 -0
  140. data/test/bm/load_26c.rb +79 -0
  141. data/test/dm_test_connection.rb +11 -0
  142. data/test/extras/base.rb +3 -0
  143. data/test/extras/et_0_sqs.rb +37 -0
  144. data/test/extras/et_jabber_test.rb +226 -0
  145. data/test/extras/test.rb +16 -0
  146. data/test/functional/base.rb +198 -0
  147. data/test/functional/db_ft_0_ar_participants.rb +136 -0
  148. data/test/functional/eft_0_process_definition.rb +34 -0
  149. data/test/functional/eft_10_unset.rb +60 -0
  150. data/test/functional/eft_11_sleep.rb +95 -0
  151. data/test/functional/eft_12_wait.rb +57 -0
  152. data/test/functional/eft_13_cursor.rb +139 -0
  153. data/test/functional/eft_14_loop.rb +36 -0
  154. data/test/functional/eft_15_undo.rb +77 -0
  155. data/test/functional/eft_16_redo.rb +88 -0
  156. data/test/functional/eft_1_print.rb +57 -0
  157. data/test/functional/eft_2_sequence.rb +47 -0
  158. data/test/functional/eft_3_equals.rb +98 -0
  159. data/test/functional/eft_4_if.rb +96 -0
  160. data/test/functional/eft_5_eval.rb +89 -0
  161. data/test/functional/eft_6_reval.rb +101 -0
  162. data/test/functional/eft_7_exp.rb +47 -0
  163. data/test/functional/eft_8_log.rb +50 -0
  164. data/test/functional/eft_9_set.rb +132 -0
  165. data/test/functional/engine_helper.rb +122 -0
  166. data/test/functional/ft_0_vars_at_launch.rb +27 -0
  167. data/test/functional/ft_1_process_status.rb +46 -0
  168. data/test/functional/ft_2_file_listener.rb +45 -0
  169. data/test/functional/ft_3_on_cancel.rb +171 -0
  170. data/test/functional/ft_4_on_error.rb +220 -0
  171. data/test/functional/ft_5_process_uri.rb +82 -0
  172. data/test/functional/ft_6_process_status.rb +62 -0
  173. data/test/functional/ft_7_parameters.rb +103 -0
  174. data/test/functional/ft_8_dollar.rb +53 -0
  175. data/test/functional/ft_9_register_participants.rb +119 -0
  176. data/test/functional/restart_base.rb +43 -0
  177. data/test/functional/rft_0_sleep.rb +76 -0
  178. data/test/functional/test.rb +24 -0
  179. data/test/path_helper.rb +12 -0
  180. data/test/test.rb +11 -1
  181. data/test/{rutest_utils.rb → test_helper.rb} +8 -31
  182. data/test/unit/test.rb +19 -0
  183. data/test/{fei_test.rb → unit/ut_0_fei.rb} +34 -49
  184. data/test/unit/ut_10_lookup_attribute.rb +86 -0
  185. data/test/unit/ut_11_filter.rb +124 -0
  186. data/test/{condition_test.rb → unit/ut_12_conditional.rb} +33 -40
  187. data/test/unit/ut_13_xmlutil.rb +57 -0
  188. data/test/unit/ut_14_var_field_lookup.rb +85 -0
  189. data/test/{fe_lookup_att_test.rb → unit/ut_15_fe_att_lookup.rb} +14 -21
  190. data/test/{storage_test.rb → unit/ut_16_expstorage_findexp.rb} +3 -9
  191. data/test/unit/ut_17_representations.rb +330 -0
  192. data/test/{hash_test.rb → unit/ut_17b_representations_hash.rb} +25 -21
  193. data/test/{slock_test.rb → unit/ut_18_store_lock.rb} +17 -20
  194. data/test/{wfid_test.rb → unit/ut_1_wfid.rb} +2 -73
  195. data/test/unit/ut_2_utils.rb +53 -0
  196. data/test/unit/ut_3_expmap.rb +65 -0
  197. data/test/{clone_test.rb → unit/ut_4_fulldup.rb} +41 -46
  198. data/test/{obs_test.rb → unit/ut_5_observable.rb} +9 -19
  199. data/test/unit/ut_6_treechecker.rb +101 -0
  200. data/test/unit/ut_7_parser_ruby.rb +344 -0
  201. data/test/unit/ut_7b_parser_ruby.rb +56 -0
  202. data/test/{description_test.rb → unit/ut_8_parser_description.rb} +8 -19
  203. data/test/unit/ut_9_workitem.rb +72 -0
  204. metadata +117 -234
  205. data/lib/openwfe/exceptions.rb +0 -51
  206. data/lib/openwfe/expool/parser.rb +0 -278
  207. data/lib/openwfe/expool/paused_error.rb +0 -77
  208. data/lib/openwfe/expool/yamlexpstorage.rb +0 -224
  209. data/lib/openwfe/expressions/fe_sleep.rb +0 -173
  210. data/lib/openwfe/extras/expool/dberrorjournal.rb +0 -189
  211. data/lib/openwfe/extras/expool/dbexpstorage.rb +0 -355
  212. data/lib/openwfe/extras/expool/dbhistory.rb +0 -135
  213. data/lib/openwfe/extras/listeners/sqslisteners.rb +0 -146
  214. data/lib/openwfe/extras/participants/sqsparticipants.rb +0 -125
  215. data/lib/openwfe/listeners/socketlisteners.rb +0 -272
  216. data/lib/openwfe/orest/definitions.rb +0 -113
  217. data/lib/openwfe/orest/osocket.rb +0 -148
  218. data/lib/openwfe/orest/xmlcodec.rb +0 -682
  219. data/lib/openwfe/participants/participantmap.rb +0 -249
  220. data/lib/openwfe/participants/socketparticipants.rb +0 -202
  221. data/lib/openwfe/storage/yamlcustom.rb +0 -106
  222. data/lib/openwfe/worklist/oldrest.rb +0 -244
  223. data/test/README.txt +0 -27
  224. data/test/back_0916_test.rb +0 -109
  225. data/test/bm/bm_1_xml_vs_prog.rb +0 -59
  226. data/test/bm/bm_2_step.rb +0 -109
  227. data/test/bm/ft_0f_5ms.rb +0 -35
  228. data/test/bm/ft_26_load.rb +0 -208
  229. data/test/bm/ft_26b_load.rb +0 -84
  230. data/test/bm/ft_26c_load.rb +0 -102
  231. data/test/bm/ft_recu.rb +0 -71
  232. data/test/concurrence_test.rb +0 -77
  233. data/test/console_test.rb +0 -12
  234. data/test/cron_ltest.rb +0 -15
  235. data/test/eno_test.rb +0 -76
  236. data/test/expmap_test.rb +0 -54
  237. data/test/expool_20031219_0916.tgz +0 -0
  238. data/test/extras/README.txt +0 -5
  239. data/test/extras/active_with_engine_test.rb +0 -140
  240. data/test/extras/activityfeed_test.rb +0 -85
  241. data/test/extras/ap_0_test.rb +0 -287
  242. data/test/extras/ap_1_test.rb +0 -53
  243. data/test/extras/ap_test_base.rb +0 -24
  244. data/test/extras/atomfeedp_test.rb +0 -113
  245. data/test/extras/atompubp_test.rb +0 -91
  246. data/test/extras/basecamp_test.rb +0 -53
  247. data/test/extras/db_errorjournal_utest.rb +0 -75
  248. data/test/extras/db_expstorage_utest.rb +0 -171
  249. data/test/extras/db_history_0_test.rb +0 -58
  250. data/test/extras/ft_19_csv.rb +0 -58
  251. data/test/extras/ft_71_b14008.rb +0 -85
  252. data/test/extras/sqs_test.rb +0 -57
  253. data/test/extras/twitter_test.rb +0 -62
  254. data/test/file_persisted_engine_test.rb +0 -64
  255. data/test/file_persistence_test.rb +0 -135
  256. data/test/filep_cancel_test.rb +0 -123
  257. data/test/filter_test.rb +0 -109
  258. data/test/flowtestbase.rb +0 -339
  259. data/test/ft_0.rb +0 -68
  260. data/test/ft_0b_sequence.rb +0 -36
  261. data/test/ft_0c_testname.rb +0 -33
  262. data/test/ft_0d_participant.rb +0 -30
  263. data/test/ft_0e_multibody.rb +0 -34
  264. data/test/ft_10_loop.rb +0 -133
  265. data/test/ft_11_ppd.rb +0 -411
  266. data/test/ft_11b_ppd.rb +0 -54
  267. data/test/ft_12_blockparticipant.rb +0 -97
  268. data/test/ft_13_eno.rb +0 -52
  269. data/test/ft_14_subprocess.rb +0 -88
  270. data/test/ft_14b_subprocess.rb +0 -192
  271. data/test/ft_14c_subprocess.rb +0 -68
  272. data/test/ft_15_iterator.rb +0 -216
  273. data/test/ft_15b_iterator.rb +0 -74
  274. data/test/ft_16_fqv.rb +0 -73
  275. data/test/ft_17_condition.rb +0 -84
  276. data/test/ft_18_pname.rb +0 -56
  277. data/test/ft_1_unset.rb +0 -175
  278. data/test/ft_1b_unset.rb +0 -39
  279. data/test/ft_20_cron.rb +0 -53
  280. data/test/ft_21_cron.rb +0 -87
  281. data/test/ft_21b_cron_pause.rb +0 -82
  282. data/test/ft_22_history.rb +0 -78
  283. data/test/ft_23_when.rb +0 -77
  284. data/test/ft_23b_when.rb +0 -70
  285. data/test/ft_23c_wait.rb +0 -80
  286. data/test/ft_23d_cww.rb +0 -58
  287. data/test/ft_24_def.rb +0 -44
  288. data/test/ft_25_cancel.rb +0 -92
  289. data/test/ft_27_getflowpos.rb +0 -143
  290. data/test/ft_28_fileparticipant.rb +0 -63
  291. data/test/ft_29_httprb.rb +0 -106
  292. data/test/ft_2_concurrence.rb +0 -137
  293. data/test/ft_2b_concurrence.rb +0 -188
  294. data/test/ft_2c_concurrence.rb +0 -64
  295. data/test/ft_30_socketlistener.rb +0 -203
  296. data/test/ft_31_flowname.rb +0 -39
  297. data/test/ft_32_journal.rb +0 -91
  298. data/test/ft_32c_journal.rb +0 -102
  299. data/test/ft_32d_journal.rb +0 -81
  300. data/test/ft_33_description.rb +0 -107
  301. data/test/ft_34_cancelwfid.rb +0 -80
  302. data/test/ft_35_localdefs.rb +0 -77
  303. data/test/ft_36_subprocids.rb +0 -97
  304. data/test/ft_37_pnames.rb +0 -70
  305. data/test/ft_38_tag.rb +0 -127
  306. data/test/ft_38b_tag.rb +0 -161
  307. data/test/ft_38c_tag.rb +0 -100
  308. data/test/ft_38d_tag.rb +0 -53
  309. data/test/ft_39_reserve.rb +0 -63
  310. data/test/ft_39b_reserve.rb +0 -84
  311. data/test/ft_3_equals.rb +0 -170
  312. data/test/ft_3b_lookup_vf.rb +0 -83
  313. data/test/ft_40_defined.rb +0 -61
  314. data/test/ft_41_case.rb +0 -110
  315. data/test/ft_42_environments.rb +0 -75
  316. data/test/ft_43_pat10.rb +0 -85
  317. data/test/ft_44_save.rb +0 -70
  318. data/test/ft_44b_restore.rb +0 -212
  319. data/test/ft_45_citerator.rb +0 -214
  320. data/test/ft_45b_citerator.rb +0 -77
  321. data/test/ft_46_pparams.rb +0 -62
  322. data/test/ft_47_filter.rb +0 -160
  323. data/test/ft_48_fe_filter.rb +0 -88
  324. data/test/ft_49_condition.rb +0 -133
  325. data/test/ft_4_misc.rb +0 -232
  326. data/test/ft_50_xml_attribute.rb +0 -152
  327. data/test/ft_51_stack.rb +0 -55
  328. data/test/ft_52_obs_participant.rb +0 -123
  329. data/test/ft_53_null_noop_participant.rb +0 -62
  330. data/test/ft_54_listen.rb +0 -288
  331. data/test/ft_54b_listen.rb +0 -66
  332. data/test/ft_54c_listen.rb +0 -99
  333. data/test/ft_55_ptimeout.rb +0 -58
  334. data/test/ft_56_timeout.rb +0 -59
  335. data/test/ft_57_a.rb +0 -148
  336. data/test/ft_58_ejournal.rb +0 -154
  337. data/test/ft_58b_ejournal.rb +0 -82
  338. data/test/ft_59_ps.rb +0 -212
  339. data/test/ft_5_time.rb +0 -118
  340. data/test/ft_60_ecancel.rb +0 -161
  341. data/test/ft_61_elsub.rb +0 -51
  342. data/test/ft_62_procparticipant.rb +0 -71
  343. data/test/ft_63_pause.rb +0 -137
  344. data/test/ft_64_alias.rb +0 -101
  345. data/test/ft_65_stringlaunch.rb +0 -59
  346. data/test/ft_66_subforget.rb +0 -70
  347. data/test/ft_67_schedlaunch.rb +0 -115
  348. data/test/ft_68_ifparticipant.rb +0 -70
  349. data/test/ft_69_cancelmissing.rb +0 -53
  350. data/test/ft_6_lambda.rb +0 -64
  351. data/test/ft_70_lookupvar.rb +0 -55
  352. data/test/ft_71_log.rb +0 -60
  353. data/test/ft_72_lookup_processes.rb +0 -79
  354. data/test/ft_73_cancel_sub.rb +0 -139
  355. data/test/ft_74_block_and_workitem_dup.rb +0 -63
  356. data/test/ft_75_ruby_attributes.rb +0 -89
  357. data/test/ft_76_merge_isolate.rb +0 -88
  358. data/test/ft_77_segments.rb +0 -35
  359. data/test/ft_78_eval.rb +0 -150
  360. data/test/ft_79_tticket.rb +0 -187
  361. data/test/ft_79b_tticket.rb +0 -172
  362. data/test/ft_79c_outcome.rb +0 -56
  363. data/test/ft_7_lose.rb +0 -104
  364. data/test/ft_7b_lose.rb +0 -78
  365. data/test/ft_80_spname.rb +0 -91
  366. data/test/ft_81_exp.rb +0 -60
  367. data/test/ft_82_trecu.rb +0 -52
  368. data/test/ft_83_badpause.rb +0 -58
  369. data/test/ft_84_updateexp.rb +0 -198
  370. data/test/ft_84b_subrepr.rb +0 -72
  371. data/test/ft_85_dolhash.rb +0 -43
  372. data/test/ft_86_dollar_fv.rb +0 -68
  373. data/test/ft_87_define.rb +0 -74
  374. data/test/ft_88_http.rb +0 -100
  375. data/test/ft_8_forget.rb +0 -44
  376. data/test/ft_9_cursor.rb +0 -154
  377. data/test/ft_9b_cursor.rb +0 -105
  378. data/test/ft_tests.rb +0 -130
  379. data/test/hparticipant_test.rb +0 -168
  380. data/test/lookup_att_test.rb +0 -90
  381. data/test/lookup_vf_test.rb +0 -94
  382. data/test/misc_test.rb +0 -94
  383. data/test/nut_0_irb.rb +0 -20
  384. data/test/param_test.rb +0 -290
  385. data/test/participant_test.rb +0 -101
  386. data/test/pending.rb +0 -23
  387. data/test/ps_representation.rb +0 -133
  388. data/test/rake_ltest.rb +0 -38
  389. data/test/rake_qtest.rb +0 -68
  390. data/test/raw_prog_test.rb +0 -407
  391. data/test/restart_cron_test.rb +0 -136
  392. data/test/restart_paused_test.rb +0 -103
  393. data/test/restart_sleep_test.rb +0 -140
  394. data/test/restart_tests.rb +0 -18
  395. data/test/restart_when_test.rb +0 -112
  396. data/test/ruby_procdef_test.rb +0 -132
  397. data/test/sec_test.rb +0 -206
  398. data/test/timeout_test.rb +0 -105
  399. data/test/treechecker_test.rb +0 -111
  400. data/test/util_xml_test.rb +0 -112
  401. data/test/wi_test.rb +0 -75
@@ -1,101 +0,0 @@
1
-
2
- #
3
- # Testing OpenWFE
4
- #
5
- # John Mettraux at openwfe.org
6
- #
7
- # Sun Oct 29 16:18:25 JST 2006
8
- #
9
-
10
- require 'rubygems'
11
-
12
- require 'test/unit'
13
-
14
- require 'openwfe/engine/engine'
15
- require 'openwfe/participants/participants'
16
-
17
- #
18
- # testing misc things
19
- #
20
-
21
- class ParticipantTest < Test::Unit::TestCase
22
-
23
- def setup
24
- @engine = OpenWFE::Engine.new
25
- end
26
-
27
- def teardown
28
- @engine.stop
29
- end
30
-
31
- def test_lookup_participant
32
-
33
- @engine.register_participant :toto, OpenWFE::NullParticipant
34
-
35
- p = @engine.get_participant "toto"
36
- assert_kind_of OpenWFE::NullParticipant, p
37
-
38
- p = @engine.get_participant :toto
39
- assert_kind_of OpenWFE::NullParticipant, p
40
-
41
- assert_equal 1, @engine.get_participant_map.size
42
- end
43
-
44
- def test_unregister_participant
45
-
46
- assert ( ! @engine.unregister_participant(:nada))
47
-
48
- @engine.register_participant :toto, OpenWFE::NullParticipant
49
-
50
- assert_equal 1, @engine.get_participant_map.size
51
-
52
- assert @engine.unregister_participant(:toto)
53
-
54
- assert_equal 0, @engine.get_participant_map.size
55
-
56
- @engine.register_participant "user_.*", OpenWFE::NullParticipant
57
-
58
- assert_equal 1, @engine.get_participant_map.size
59
-
60
- assert @engine.unregister_participant("user_.*")
61
-
62
- assert_equal 0, @engine.get_participant_map.size
63
- end
64
-
65
- def test_order
66
-
67
- s = ""
68
-
69
- @engine.register_participant "a.*", :astar
70
- @engine.register_participant "alpha", :alpha
71
-
72
- assert_equal :astar, @engine.get_participant("alpha")
73
-
74
- clean_participants
75
-
76
- @engine.register_participant "alpha", :alpha
77
- @engine.register_participant "a.*", :astar
78
-
79
- assert_equal :alpha, @engine.get_participant("alpha")
80
-
81
- clean_participants
82
-
83
- @engine.register_participant "a.*", :astar
84
-
85
- assert_equal :astar, @engine.get_participant("alpha")
86
-
87
- @engine.register_participant "alpha", { :participant => :alpha, :position => :first }
88
-
89
- assert_equal :alpha, @engine.get_participant("alpha")
90
- assert_equal :astar, @engine.get_participant("abricot")
91
- end
92
-
93
- protected
94
-
95
- def clean_participants
96
-
97
- @engine.get_participant_map.instance_variable_set(
98
- :@participants, [])
99
- end
100
-
101
- end
@@ -1,23 +0,0 @@
1
-
2
- #
3
- # a method for checking the number of pending jobs left in the engine
4
- #
5
-
6
- module PendingJobsMixin
7
-
8
- def assert_no_jobs_left
9
-
10
- #cname = @engine.class.name
11
- #min_jobs = if cname == 'OpenWFE::CachedFilePersistedEngine'
12
- # 1
13
- #elsif cname == 'OpenWFE::Extras::CachedDbPersistedEngine'
14
- # 1
15
- #else
16
- # 0
17
- #end
18
- #assert_equal min_jobs, @engine.get_scheduler.pending_job_count
19
-
20
- assert_equal 0, @engine.get_scheduler.at_job_count
21
- end
22
- end
23
-
@@ -1,133 +0,0 @@
1
-
2
- #
3
- # Testing OpenWFE
4
- #
5
- # John Mettraux at openwfe.org
6
- #
7
- # Tue Apr 8 18:33:11 JST 2008
8
- #
9
-
10
- require 'rubygems'
11
-
12
- require 'test/unit'
13
-
14
- require 'openwfe/engine'
15
-
16
-
17
- class PsRepresentationTest < Test::Unit::TestCase
18
-
19
- def setup
20
-
21
- @engine = OpenWFE::Engine.new :definition_in_launchitem_allowed => true
22
- end
23
-
24
- def teardown
25
-
26
- @engine.stop if @engine
27
- end
28
-
29
- #
30
- # TEST 0
31
-
32
- class Test0 < OpenWFE::ProcessDefinition
33
- sequence do
34
- alpha
35
- bravo
36
- end
37
- end
38
-
39
- def test_0
40
-
41
- @engine.register_participant "alpha", OpenWFE::NullParticipant
42
-
43
- fei = @engine.launch Test0
44
-
45
- sleep 0.350
46
-
47
- ps = @engine.process_stack fei, true
48
-
49
- #p ps.representation
50
-
51
- assert_equal(
52
- ["process-definition", {"name"=>"Test", "revision"=>"0"}, [["sequence", {}, [["alpha", {"ref"=>"alpha"}, []], ["bravo", {}, []]]]]],
53
- ps.representation)
54
-
55
- #
56
- # change process instance (charly instead of bravo)
57
-
58
- #puts ps.collect { |fexp| fexp.fei.to_s }.join("\n")
59
-
60
- bravo_fei = ps.find { |fexp| fexp.fei.expid == "0.0.1" }.fei
61
-
62
- @engine.update_raw_expression bravo_fei, ["charly", {}, []]
63
-
64
- ps = @engine.process_stack fei, true
65
-
66
- assert_equal(
67
- ["process-definition", {"name"=>"Test", "revision"=>"0"}, [["sequence", {}, [["alpha", {"ref"=>"alpha"}, []], ["charly", {}, []]]]]],
68
- ps.representation)
69
- end
70
-
71
- #
72
- # TEST 1
73
-
74
- class Test1 < OpenWFE::ProcessDefinition
75
-
76
- description "interference of the description"
77
-
78
- sequence do
79
- alpha
80
- bravo
81
- end
82
- end
83
-
84
- def test_1
85
-
86
- @engine.register_participant "alpha", OpenWFE::NullParticipant
87
-
88
- fei = @engine.launch Test1
89
-
90
- sleep 0.350
91
-
92
- ps = @engine.process_stack fei, true
93
-
94
- assert_equal(
95
- ["process-definition", {"name"=>"Test", "revision"=>"1"}, [["description", {}, ["interference of the description"]], ["sequence", {}, [["alpha", {"ref"=>"alpha"}, []], ["bravo", {}, []]]]]],
96
- ps.representation)
97
-
98
- #
99
- # change process instance (charly instead of bravo)
100
-
101
- bravo_fei = ps.find { |fexp| fexp.fei.expid == "0.1.1" }.fei
102
-
103
- @engine.update_raw_expression bravo_fei, ["charly", {}, []]
104
-
105
- ps = @engine.process_stack fei, true
106
-
107
- assert_equal(
108
- ["process-definition", {"name"=>"Test", "revision"=>"1"}, [["description", {}, ["interference of the description"]], ["sequence", {}, [["alpha", {"ref"=>"alpha"}, []], ["charly", {}, []]]]]],
109
- ps.representation)
110
-
111
- #
112
- # nuke participant charly
113
-
114
- @engine.cancel_expression bravo_fei
115
-
116
- sleep 0.350
117
-
118
- ps = @engine.process_stack fei, true
119
-
120
- #p ps.representation
121
-
122
- assert_equal(
123
- ["process-definition", {"name"=>"Test", "revision"=>"1"}, [["description", {}, ["interference of the description"]], ["sequence", {}, [["alpha", {"ref"=>"alpha"}, []]]]]],
124
- ps.representation)
125
-
126
- assert_equal(
127
- ["process-definition", {"name"=>"Test", "revision"=>"1"}, [["description", {}, ["interference of the description"]], ["sequence", {}, [["alpha", {"ref"=>"alpha"}, []]]]]],
128
- @engine.process_representation(fei.wfid))
129
- end
130
-
131
- # see also test/ft_84_updateexp.rb
132
-
133
- end
@@ -1,38 +0,0 @@
1
- #
2
- # Testing OpenWFE
3
- #
4
- # John Mettraux at openwfe.org
5
- #
6
- # Mon Oct 9 22:19:44 JST 2006
7
- #
8
-
9
- require 'rubygems'
10
-
11
- #
12
- # the tests that take lots of time...
13
- #
14
-
15
- require 'ft_5_time'
16
-
17
- require 'restart_tests'
18
-
19
- #require 'ft_20_cron'
20
- #require 'ft_21_cron'
21
- #require 'ft_21b_cron_pause'
22
- require 'cron_ltest'
23
-
24
- require 'ft_67_schedlaunch'
25
-
26
- require 'ft_51_stack'
27
-
28
- require 'ft_29_httprb' # needs net connection
29
-
30
- #require 'ft_30_socketlistener'
31
- #
32
- # shaky test...
33
-
34
- #
35
- # the quick tests
36
- #
37
- #require 'rake_qtest'
38
-
@@ -1,68 +0,0 @@
1
- #
2
- # Testing OpenWFE
3
- #
4
- # John Mettraux at openwfe.org
5
- #
6
- # Mon Oct 9 22:19:44 JST 2006
7
- #
8
-
9
- require 'rubygems'
10
-
11
- #require 'rutest_utils'
12
-
13
-
14
- require 'fei_test'
15
- require 'wfid_test'
16
- require 'wi_test'
17
- require 'lookup_att_test'
18
- require 'filter_test'
19
- require 'misc_test'
20
- require 'condition_test'
21
- require 'hash_test'
22
- require 'raw_prog_test'
23
- require 'file_persistence_test'
24
- require 'expmap_test'
25
- require 'obs_test'
26
- require 'clone_test'
27
- require 'lookup_vf_test'
28
- require 'fe_lookup_att_test'
29
- require 'treechecker_test'
30
-
31
- require 'sec_test'
32
- require 'param_test'
33
-
34
- require 'storage_test'
35
- require 'file_persisted_engine_test'
36
- require 'filep_cancel_test'
37
- require 'ruby_procdef_test'
38
- require 'description_test'
39
- require 'ps_representation'
40
-
41
- require 'util_xml_test'
42
-
43
- require 'ft_tests'
44
- #
45
- # all the 'ft' tests are required in 'ft_tests.rb'
46
-
47
- #require 'ft_30_socketlistener'
48
-
49
- require 'participant_test'
50
- require 'hparticipant_test'
51
- require 'timeout_test'
52
-
53
- require 'slock_test'
54
-
55
- #require 'extras/atomfeedp_test.rb'
56
-
57
-
58
- #Signal.trap "SIGINT" do |signo|
59
- # puts
60
- # puts "Interrupt"
61
- # puts
62
- # puts caller[1..-1]
63
- # puts
64
- # exit 0
65
- #end if on_jruby?
66
- #
67
- # useless
68
-
@@ -1,407 +0,0 @@
1
-
2
- #
3
- # Testing OpenWFE
4
- #
5
- # John Mettraux at openwfe.org
6
- #
7
- # Mon Oct 9 22:19:44 JST 2006
8
- #
9
-
10
- require 'rubygems'
11
-
12
- require 'test/unit'
13
- require 'openwfe/def'
14
- require 'openwfe/expool/parser'
15
-
16
-
17
- class RawProgTest < Test::Unit::TestCase
18
-
19
- #def setup
20
- #end
21
-
22
- #def teardown
23
- #end
24
-
25
- XML_DEF =
26
- "<process-definition name='test0' revision='0'>"+
27
- "<sequence>"+
28
- "<participant ref='a'/>"+
29
- "<participant ref='b'/>"+
30
- "</sequence>"+
31
- "</process-definition>"
32
-
33
- #
34
- # TEST 0
35
- #
36
-
37
- class TestDefinition < OpenWFE::ProcessDefinition
38
- def make
39
- process_definition :name => "test0", :revision => "0" do
40
- sequence do
41
- participant :ref => "a"
42
- participant :ref => "b"
43
- end
44
- end
45
- end
46
- end
47
-
48
- def test_prog_0
49
-
50
- s = OpenWFE::ExpressionTree.to_s(TestDefinition.new.make)
51
-
52
- assert_equal XML_DEF, s
53
- end
54
-
55
- def test_prog_0b
56
-
57
- #s = TestDefinition.do_make.to_s
58
- s = OpenWFE::ExpressionTree.to_s(TestDefinition.do_make)
59
-
60
- assert_equal XML_DEF, s
61
- end
62
-
63
-
64
- #
65
- # TEST 1
66
- #
67
-
68
- def test_prog_1
69
-
70
- pg = OpenWFE::ProcessDefinition.new
71
-
72
- class << pg
73
- def my_proc
74
- process_definition :name => "test0", :revision => "0" do
75
- sequence do
76
- participant :ref => "a"
77
- participant :ref => "b"
78
- end
79
- end
80
- end
81
- end
82
- pdef = pg.my_proc
83
- s = pdef.to_s
84
-
85
- assert XML_DEF, s
86
- end
87
-
88
-
89
- #
90
- # TEST 2
91
- #
92
-
93
- class TestDefinition2 < OpenWFE::ProcessDefinition
94
- def make
95
- process_definition :name => "test2", :revision => "0" do
96
- sequence do
97
- set :field => "toto" do
98
- "nada"
99
- end
100
- participant :ref => "b"
101
- end
102
- end
103
- end
104
- end
105
-
106
- XML_DEF2 =
107
- "<process-definition name='test2' revision='0'>"+
108
- "<sequence>"+
109
- "<set field='toto'>"+
110
- "nada"+
111
- "</set>"+
112
- "<participant ref='b'/>"+
113
- "</sequence>"+
114
- "</process-definition>"
115
-
116
- def test_prog_2
117
-
118
- s = OpenWFE::ExpressionTree.to_s(TestDefinition2.do_make)
119
-
120
- assert_equal XML_DEF2, s
121
-
122
- #puts
123
- #puts TestDefinition2.do_make.to_code_s
124
- end
125
-
126
-
127
- #
128
- # TEST 3
129
- #
130
-
131
- class TestDefinition3 < OpenWFE::ProcessDefinition
132
- def make
133
- process_definition :name => "test3", :revision => "0" do
134
- _if do
135
- equals :field_value => "nada", :other_value => "surf"
136
- participant :ref => "b"
137
- end
138
- end
139
- end
140
- end
141
-
142
- XML_DEF3 =
143
- "<process-definition name='test3' revision='0'>"+
144
- "<if>"+
145
- "<equals field-value='nada' other-value='surf'/>"+
146
- "<participant ref='b'/>"+
147
- "</if>"+
148
- "</process-definition>"
149
-
150
- CODE_DEF3 = """
151
- process_definition :name => \"test3\", :revision => \"0\" do
152
- _if do
153
- equals :field_value => \"nada\", :other_value => \"surf\"
154
- participant :ref => \"b\"
155
- end
156
- end""".strip
157
-
158
- def test_prog_3
159
-
160
- s = OpenWFE::ExpressionTree.to_s(TestDefinition3.do_make)
161
-
162
- assert_equal XML_DEF3, s
163
-
164
- assert_equal(
165
- CODE_DEF3,
166
- OpenWFE::ExpressionTree.to_code_s(TestDefinition3.do_make))
167
-
168
- r = OpenWFE::DefParser.parse s
169
-
170
- assert_equal CODE_DEF3, OpenWFE::ExpressionTree.to_code_s(r)
171
- end
172
-
173
-
174
- #
175
- # TEST 4
176
- #
177
-
178
- class TestDefinition4 < OpenWFE::ProcessDefinition
179
- def make
180
- process_definition :name => "test4", :revision => "0" do
181
- sequence do
182
- 3.times { participant :ref => "b" }
183
- end
184
- end
185
- end
186
- end
187
-
188
- CODE_DEF4 = %{
189
- process_definition :name => "test4", :revision => "0" do
190
- sequence do
191
- participant :ref => "b"
192
- participant :ref => "b"
193
- participant :ref => "b"
194
- end
195
- end}.strip
196
-
197
- def test_prog_4
198
-
199
- #puts
200
- #puts TestDefinition4.do_make.to_s
201
- #puts
202
- #puts TestDefinition4.do_make.to_code_s
203
-
204
- assert_equal(
205
- CODE_DEF4,
206
- OpenWFE::ExpressionTree.to_code_s(TestDefinition4.do_make))
207
- end
208
-
209
-
210
- #
211
- # TEST 4b
212
- #
213
-
214
- class TestDefinition4b < OpenWFE::ProcessDefinition
215
- def make
216
- sequence do
217
- [ :b, :b, :b ].each do |p|
218
- participant p
219
- end
220
- end
221
- end
222
- end
223
-
224
- CODE_DEF4b = %{
225
- process_definition :name => "Test", :revision => "4b" do
226
- sequence do
227
- participant 'b'
228
- participant 'b'
229
- participant 'b'
230
- end
231
- end}.strip
232
-
233
- def test_prog_4b
234
-
235
- assert_equal(
236
- CODE_DEF4b,
237
- OpenWFE::ExpressionTree.to_code_s(TestDefinition4b.do_make))
238
- end
239
-
240
-
241
- #
242
- # TEST 5
243
- #
244
-
245
- class TestDefinition5 < OpenWFE::ProcessDefinition
246
- def make
247
- sequence do
248
- participant :ref => :toto
249
- sub0
250
- end
251
- process_definition :name => "sub0" do
252
- nada
253
- end
254
- end
255
- end
256
-
257
- CODE_DEF5 = %{
258
- process_definition :name => "Test", :revision => "5" do
259
- sequence do
260
- participant :ref => :toto
261
- sub0
262
- end
263
- process_definition :name => "sub0" do
264
- nada
265
- end
266
- end}.strip
267
-
268
- def test_prog_5
269
-
270
- assert_equal(
271
- CODE_DEF5,
272
- OpenWFE::ExpressionTree.to_code_s(TestDefinition5.do_make))
273
- end
274
-
275
-
276
- #
277
- # TEST 6
278
- #
279
-
280
- class TestDefinition60 < OpenWFE::ProcessDefinition
281
- def make
282
- sequence do
283
- participant :ref => :toto
284
- nada
285
- end
286
- end
287
- end
288
-
289
- CODE_DEF6 = %{
290
- process_definition :name => "Test", :revision => "60" do
291
- sequence do
292
- participant :ref => :toto
293
- nada
294
- end
295
- end}.strip
296
-
297
- def test_prog_6
298
-
299
- assert_equal(
300
- CODE_DEF6,
301
- OpenWFE::ExpressionTree.to_code_s(TestDefinition60.do_make))
302
- end
303
-
304
-
305
- #
306
- # TEST 7
307
- #
308
-
309
- class TestDefinitionSeven < OpenWFE::ProcessDefinition
310
- def make
311
- participant :ref => :toto
312
- end
313
- end
314
-
315
- CODE_DEF7 = %{
316
- process_definition :name => "TestDefinitionSeven", :revision => "0" do
317
- participant :ref => :toto
318
- end}.strip
319
-
320
- A_DEF7 = [
321
- "process-definition",
322
- { "name"=>"TestDefinitionSeven", "revision"=>"0" },
323
- [ [ "participant", { "ref" => :toto }, [] ] ]
324
- ]
325
-
326
- def test_prog_7
327
-
328
- assert_equal(
329
- CODE_DEF7,
330
- OpenWFE::ExpressionTree.to_code_s(TestDefinitionSeven.do_make))
331
-
332
- assert_equal(
333
- A_DEF7,
334
- TestDefinitionSeven.do_make)
335
- end
336
-
337
- #
338
- # TEST 8
339
- #
340
-
341
- def do_test (class_name, pdef)
342
- #
343
- # losing my time with an eval
344
- #
345
- result = eval """
346
- class #{class_name} < OpenWFE::ProcessDefinition
347
- def make
348
- participant 'nada'
349
- end
350
- end
351
- #{class_name}.do_make
352
- """
353
- assert_equal result[1]['name'], pdef[0]
354
- assert_equal result[1]['revision'], pdef[1]
355
- end
356
-
357
- def test_process_names
358
-
359
- do_test "MyProcessDefinition_10", ["MyProcess", "10"]
360
- do_test "MyProcessDefinition10", ["MyProcess", "10"]
361
- do_test "MyProcessDefinition1_0", ["MyProcess", "1.0"]
362
- do_test "MyProcessThing_1_0", ["MyProcessThing", "1.0"]
363
- end
364
-
365
- def do_test_2 (raw_name, expected)
366
-
367
- assert_equal(
368
- expected,
369
- OpenWFE::ProcessDefinition.extract_name_and_revision(raw_name))
370
- end
371
-
372
- def test_process_names_2
373
-
374
- do_test_2 "MyProcessDefinition_10", ["MyProcess", "10"]
375
- do_test_2 "MyProcessDefinition5b", ["MyProcess", "5b"]
376
- end
377
-
378
-
379
- #
380
- # TEST 9
381
- #
382
-
383
- class TestDefinition9 < OpenWFE::ProcessDefinition
384
- def make
385
- description "this is my process"
386
- sequence do
387
- participant :ref => :toto
388
- end
389
- end
390
- end
391
-
392
- CODE_DEF9 = """
393
- process_definition :name => 'Test', :revision => '60' do
394
- description 'this is my process'
395
- sequence do
396
- participant :ref => 'toto'
397
- nada
398
- end
399
- end""".strip
400
-
401
- def _test_prog_9
402
-
403
- assert CODE_DEF9, TestDefinition9.do_make.to_code_s
404
- end
405
-
406
- end
407
-