openwferu 0.9.9 → 0.9.10

Sign up to get free protection for your applications and to get access to all the features.
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