openwferu 0.9.9 → 0.9.10

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 (55) hide show
  1. data/examples/kotoba.rb +22 -0
  2. data/lib/openwfe/engine/engine.rb +46 -10
  3. data/lib/openwfe/expool/expressionpool.rb +84 -71
  4. data/lib/openwfe/expool/history.rb +6 -2
  5. data/lib/openwfe/expool/journal.rb +9 -3
  6. data/lib/openwfe/expool/journal_replay.rb +8 -5
  7. data/lib/openwfe/expressions/fe_participant.rb +32 -1
  8. data/lib/openwfe/filterdef.rb +1 -1
  9. data/lib/openwfe/omixins.rb +70 -0
  10. data/lib/openwfe/participants/participantmap.rb +14 -1
  11. data/lib/openwfe/rest/definitions.rb +2 -1
  12. data/lib/openwfe/rest/xmlcodec.rb +56 -27
  13. data/lib/openwfe/util/kotoba.rb +2 -2
  14. data/lib/openwfe/util/workqueue.rb +177 -0
  15. data/lib/openwfe/utils.rb +52 -13
  16. data/lib/openwfe/version.rb +1 -1
  17. data/lib/openwfe/worklist/storeparticipant.rb +7 -4
  18. data/test/fei_test.rb +12 -1
  19. data/test/flowtestbase.rb +21 -8
  20. data/test/ft_0b_sequence.rb +6 -4
  21. data/test/ft_10_loop.rb +10 -5
  22. data/test/ft_10b_loop2.rb +5 -2
  23. data/test/ft_11_ppd.rb +12 -5
  24. data/test/ft_1_unset.rb +22 -13
  25. data/test/ft_23c_wait.rb +10 -6
  26. data/test/ft_25_cancel.rb +11 -5
  27. data/test/ft_27_getflowpos.rb +21 -4
  28. data/test/ft_28_fileparticipant.rb +1 -1
  29. data/test/ft_2c_concurrence.rb +8 -4
  30. data/test/ft_30_socketlistener.rb +8 -0
  31. data/test/ft_32_journal.rb +11 -2
  32. data/test/ft_34_cancelwfid.rb +4 -0
  33. data/test/ft_36_subprocids.rb +2 -1
  34. data/test/ft_37_pnames.rb +1 -1
  35. data/test/ft_38_tag.rb +5 -5
  36. data/test/ft_39_reserve.rb +1 -41
  37. data/test/ft_39b_reserve.rb +70 -0
  38. data/test/ft_40_defined.rb +2 -1
  39. data/test/ft_42_environments.rb +1 -2
  40. data/test/ft_45_citerator.rb +16 -4
  41. data/test/ft_46_pparams.rb +3 -0
  42. data/test/ft_49_condition.rb +2 -1
  43. data/test/ft_50_xml_attribute.rb +72 -3
  44. data/test/ft_51_stack.rb +58 -0
  45. data/test/ft_52_obs_participant.rb +127 -0
  46. data/test/ft_7b_lose.rb +5 -4
  47. data/test/ft_tests.rb +3 -0
  48. data/test/hparticipant_test.rb +21 -18
  49. data/test/misc_test.rb +9 -0
  50. data/test/param_test.rb +6 -0
  51. data/test/rake_test.rb +1 -0
  52. data/test/scheduler_test.rb +21 -0
  53. data/test/sec_test.rb +14 -27
  54. data/test/timeout_test.rb +6 -2
  55. metadata +8 -2
data/test/sec_test.rb CHANGED
@@ -41,10 +41,9 @@ class SecTest < Test::Unit::TestCase
41
41
  </sequence>
42
42
  </process-definition>'''
43
43
 
44
- e = dotest(engine, def0)
44
+ dotest(engine, def0)
45
45
 
46
- assert_not_nil e
47
- assert_equal e.to_s, "Insecure operation - initialize"
46
+ assert ((OpenWFE::grep "Insecure operation - initialize", "engine.log").size > 0)
48
47
 
49
48
  def1 = \
50
49
  '''<process-definition name="" revision="0">
@@ -60,12 +59,9 @@ class SecTest < Test::Unit::TestCase
60
59
  </sequence>
61
60
  </process-definition>'''
62
61
 
63
- e = dotest(engine, def1)
62
+ dotest(engine, def1)
64
63
 
65
- assert_not_nil e
66
-
67
- assert_equal \
68
- e.to_s, "undefined method `my_name' for \"stringobject\":String"
64
+ assert ((OpenWFE::grep "undefined method `my_name' for \"stringobject\":String", "engine.log").size > 0)
69
65
 
70
66
  def2 = \
71
67
  '''<process-definition name="" revision="0">
@@ -83,11 +79,7 @@ class SecTest < Test::Unit::TestCase
83
79
  </sequence>
84
80
  </process-definition>'''
85
81
 
86
- e = dotest(engine, def2)
87
-
88
- assert_nil e
89
- #
90
- # I don't like that
82
+ dotest(engine, def2)
91
83
 
92
84
  def3 = \
93
85
  '''<process-definition name="" revision="0">
@@ -97,14 +89,10 @@ class SecTest < Test::Unit::TestCase
97
89
  </sequence>
98
90
  </process-definition>'''
99
91
 
100
- e = dotest(engine, def3)
101
-
102
- #puts e
103
-
104
- assert_not_nil e
92
+ dotest(engine, def3)
105
93
 
106
- assert_equal \
107
- e.to_s, "evaluation of ruby code is not allowed"
94
+ assert OpenWFE::grep(
95
+ "evaluation of ruby code is not allowed", "engine.log")
108
96
 
109
97
  engine.stop
110
98
  end
@@ -129,12 +117,16 @@ class SecTest < Test::Unit::TestCase
129
117
 
130
118
  engine.launch(OpenWFE::LaunchItem.new(def0))
131
119
 
120
+ sleep 0.300
121
+
132
122
  assert_equal value, "4_"
133
123
 
134
124
  engine.ac[:ruby_eval_allowed] = true
135
125
 
136
126
  engine.launch(OpenWFE::LaunchItem.new(def0))
137
127
 
128
+ sleep 0.300
129
+
138
130
  assert_equal value, "4_35"
139
131
 
140
132
  engine.stop
@@ -149,14 +141,9 @@ class SecTest < Test::Unit::TestCase
149
141
  OpenWFE::LaunchItem.new(def_or_li)
150
142
  end
151
143
 
152
- e = nil
153
-
154
- begin
155
- engine.launch(li)
156
- rescue Exception => e
157
- end
144
+ engine.launch(li)
158
145
 
159
- e
146
+ sleep 0.500
160
147
  end
161
148
 
162
149
  end
data/test/timeout_test.rb CHANGED
@@ -90,10 +90,14 @@ over""",
90
90
 
91
91
  engine.launch(li)
92
92
 
93
+ sleep 0.300
94
+
93
95
  wi = albert.list_workitems(nil)[0]
94
96
  wi.done = "ok"
95
97
  albert.proceed(wi)
96
98
 
99
+ sleep 0.300
100
+
97
101
  s = engine.application_context["__tracer"].to_s
98
102
 
99
103
  #puts "trace is >#{s}<"
@@ -101,8 +105,8 @@ over""",
101
105
 
102
106
  # in this test, the participant doesn't time out
103
107
 
104
- assert \
105
- albert.size == 0,
108
+ assert_equal \
109
+ albert.size, 0,
106
110
  "workitem was not removed from workitem store"
107
111
  assert \
108
112
  s == "timedout? \nover ok",
metadata CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.9.0
3
3
  specification_version: 1
4
4
  name: openwferu
5
5
  version: !ruby/object:Gem::Version
6
- version: 0.9.9
7
- date: 2007-04-16 00:00:00 +09:00
6
+ version: 0.9.10
7
+ date: 2007-04-26 00:00:00 +09:00
8
8
  summary: an open source ruby workflow and bpm engine
9
9
  require_paths:
10
10
  - lib
@@ -44,6 +44,7 @@ files:
44
44
  - lib/openwfe/flowexpressionid.rb
45
45
  - lib/openwfe/listeners
46
46
  - lib/openwfe/logging.rb
47
+ - lib/openwfe/omixins.rb
47
48
  - lib/openwfe/participants
48
49
  - lib/openwfe/rest
49
50
  - lib/openwfe/rudefinitions.rb
@@ -135,6 +136,7 @@ files:
135
136
  - lib/openwfe/util/scheduler.rb
136
137
  - lib/openwfe/util/schedulers.rb
137
138
  - lib/openwfe/util/sqs.rb
139
+ - lib/openwfe/util/workqueue.rb
138
140
  - lib/openwfe/worklist/storeparticipant.rb
139
141
  - test/atom_test.rb
140
142
  - test/console_test.rb
@@ -193,6 +195,7 @@ files:
193
195
  - test/ft_37_pnames.rb
194
196
  - test/ft_38_tag.rb
195
197
  - test/ft_39_reserve.rb
198
+ - test/ft_39b_reserve.rb
196
199
  - test/ft_3_equals.rb
197
200
  - test/ft_40_defined.rb
198
201
  - test/ft_41_case.rb
@@ -207,6 +210,8 @@ files:
207
210
  - test/ft_49_condition.rb
208
211
  - test/ft_4_misc.rb
209
212
  - test/ft_50_xml_attribute.rb
213
+ - test/ft_51_stack.rb
214
+ - test/ft_52_obs_participant.rb
210
215
  - test/ft_5_time.rb
211
216
  - test/ft_6_lambda.rb
212
217
  - test/ft_7_lose.rb
@@ -242,6 +247,7 @@ files:
242
247
  - examples/engine_template.rb
243
248
  - examples/flowtracing.rb
244
249
  - examples/homeworkreview.rb
250
+ - examples/kotoba.rb
245
251
  - examples/mano_tracker.rb
246
252
  - examples/openwferu.rb
247
253
  - examples/quotereporter.rb