openwferu 0.9.0
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.
- data/README +47 -0
- data/lib/codec.rb +571 -0
- data/lib/controlclient.rb +115 -0
- data/lib/definitions.rb +112 -0
- data/lib/exception.rb +60 -0
- data/lib/flowexpressionid.rb +137 -0
- data/lib/openwferu.rb +43 -0
- data/lib/osocket.rb +138 -0
- data/lib/otime.rb +171 -0
- data/lib/restclient.rb +155 -0
- data/lib/ru/contextual.rb +63 -0
- data/lib/ru/dollar.rb +163 -0
- data/lib/ru/engine.rb +130 -0
- data/lib/ru/environment.rb +140 -0
- data/lib/ru/expressionmap.rb +120 -0
- data/lib/ru/expressionpool.rb +339 -0
- data/lib/ru/expressionstorage.rb +97 -0
- data/lib/ru/fe_base.rb +105 -0
- data/lib/ru/fe_concurrence.rb +122 -0
- data/lib/ru/fe_define.rb +101 -0
- data/lib/ru/fe_misc.rb +96 -0
- data/lib/ru/fe_participant.rb +75 -0
- data/lib/ru/fe_raw.rb +173 -0
- data/lib/ru/fe_subprocess.rb +84 -0
- data/lib/ru/fe_time.rb +135 -0
- data/lib/ru/fe_utils.rb +123 -0
- data/lib/ru/fe_value.rb +225 -0
- data/lib/ru/flowexpression.rb +250 -0
- data/lib/ru/logging.rb +85 -0
- data/lib/ru/participant.rb +67 -0
- data/lib/ru/participantmap.rb +93 -0
- data/lib/ru/participants.rb +74 -0
- data/lib/ru/rudefinitions.rb +70 -0
- data/lib/ru/ruutils.rb +68 -0
- data/lib/ru/scheduler.rb +478 -0
- data/lib/ru/schedulers.rb +63 -0
- data/lib/ru/service.rb +64 -0
- data/lib/test.rb +220 -0
- data/lib/utils.rb +94 -0
- data/lib/workitem.rb +250 -0
- data/lib/worklistclient.rb +276 -0
- data/test/dollartest.rb +79 -0
- data/test/feitest.rb +130 -0
- data/test/flowtestbase.rb +86 -0
- data/test/ft_0.rb +161 -0
- data/test/ft_1_unset.rb +152 -0
- data/test/ft_2_concurrence.rb +34 -0
- data/test/ft_3_equals.rb +84 -0
- data/test/ft_4_misc.rb +128 -0
- data/test/ft_5_time.rb +56 -0
- data/test/misctest.rb +46 -0
- data/test/runtest.rb +21 -0
- data/test/rutest_utils.rb +15 -0
- data/test/timetest.rb +111 -0
- metadata +100 -0
data/test/timetest.rb
ADDED
@@ -0,0 +1,111 @@
|
|
1
|
+
|
2
|
+
#
|
3
|
+
# Testing OpenWFEru
|
4
|
+
#
|
5
|
+
# John Mettraux at openwfe.org
|
6
|
+
#
|
7
|
+
# Sun Oct 29 16:18:25 JST 2006
|
8
|
+
#
|
9
|
+
|
10
|
+
require 'test/unit'
|
11
|
+
require 'otime'
|
12
|
+
require 'ru/scheduler'
|
13
|
+
|
14
|
+
#
|
15
|
+
# testing otime and the scheduler
|
16
|
+
#
|
17
|
+
|
18
|
+
class TimeTest < Test::Unit::TestCase
|
19
|
+
|
20
|
+
#def setup
|
21
|
+
#end
|
22
|
+
|
23
|
+
#def teardown
|
24
|
+
#end
|
25
|
+
|
26
|
+
def test_is_digit
|
27
|
+
|
28
|
+
for i in 0...9
|
29
|
+
si = "#{i}"
|
30
|
+
assert \
|
31
|
+
OpenWFE::is_digit?(si),
|
32
|
+
"'#{si}' should be a digit"
|
33
|
+
end
|
34
|
+
|
35
|
+
assert \
|
36
|
+
(not OpenWFE::is_digit?(1)),
|
37
|
+
"the integer 1 is not a character digit"
|
38
|
+
assert \
|
39
|
+
(not OpenWFE::is_digit?("a")),
|
40
|
+
"the character 'a' is not a character digit"
|
41
|
+
end
|
42
|
+
|
43
|
+
def test_parse_time_string
|
44
|
+
|
45
|
+
pts("1000", 1.0)
|
46
|
+
pts("1h", 3600.0)
|
47
|
+
pts("1h10s", 3610.0)
|
48
|
+
end
|
49
|
+
|
50
|
+
def test_scheduler_0
|
51
|
+
|
52
|
+
$var = nil
|
53
|
+
|
54
|
+
scheduler = OpenWFEru::Scheduler.new()
|
55
|
+
scheduler.start
|
56
|
+
|
57
|
+
scheduler.schedule_in('2s', TestSchedulable.new, nil)
|
58
|
+
|
59
|
+
sleep(2.5)
|
60
|
+
scheduler.stop
|
61
|
+
|
62
|
+
#puts ">#{$var}<"
|
63
|
+
|
64
|
+
assert \
|
65
|
+
($var == "ok"),
|
66
|
+
"scheduler_0 didn't work"
|
67
|
+
end
|
68
|
+
|
69
|
+
def test_cron_0
|
70
|
+
$var = 0
|
71
|
+
|
72
|
+
scheduler = OpenWFEru::Scheduler.new()
|
73
|
+
scheduler.start
|
74
|
+
|
75
|
+
scheduler.schedule('* * * * *', CounterSchedulable.new, nil)
|
76
|
+
|
77
|
+
sleep(120)
|
78
|
+
scheduler.stop
|
79
|
+
|
80
|
+
#puts ">#{$var}<"
|
81
|
+
|
82
|
+
assert \
|
83
|
+
($var == 2),
|
84
|
+
"cron_0 failed, $var is #{$var}"
|
85
|
+
end
|
86
|
+
|
87
|
+
protected
|
88
|
+
|
89
|
+
class TestSchedulable
|
90
|
+
include OpenWFEru::Schedulable
|
91
|
+
|
92
|
+
def trigger (params)
|
93
|
+
$var = "ok"
|
94
|
+
end
|
95
|
+
end
|
96
|
+
|
97
|
+
class CounterSchedulable
|
98
|
+
include OpenWFEru::Schedulable
|
99
|
+
|
100
|
+
def trigger (params)
|
101
|
+
$var = $var + 1
|
102
|
+
end
|
103
|
+
end
|
104
|
+
|
105
|
+
def pts (time_string, seconds)
|
106
|
+
assert \
|
107
|
+
(OpenWFE::parse_time_string(time_string) == seconds),
|
108
|
+
"'#{time_string}' did not map to #{seconds} seconds"
|
109
|
+
end
|
110
|
+
|
111
|
+
end
|
metadata
ADDED
@@ -0,0 +1,100 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
rubygems_version: 0.9.0
|
3
|
+
specification_version: 1
|
4
|
+
name: openwferu
|
5
|
+
version: !ruby/object:Gem::Version
|
6
|
+
version: 0.9.0
|
7
|
+
date: 2006-11-29 00:00:00 +09:00
|
8
|
+
summary: An OpenWFE-compatible workflow engine in Ruby
|
9
|
+
require_paths:
|
10
|
+
- lib
|
11
|
+
email: john at openwfe dot org
|
12
|
+
homepage: http://rubyforge.org/projects/openwferu
|
13
|
+
rubyforge_project:
|
14
|
+
description:
|
15
|
+
autorequire: openwferu
|
16
|
+
default_executable:
|
17
|
+
bindir: bin
|
18
|
+
has_rdoc: true
|
19
|
+
required_ruby_version: !ruby/object:Gem::Version::Requirement
|
20
|
+
requirements:
|
21
|
+
- - ">"
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: 0.0.0
|
24
|
+
version:
|
25
|
+
platform: ruby
|
26
|
+
signing_key:
|
27
|
+
cert_chain:
|
28
|
+
post_install_message:
|
29
|
+
authors:
|
30
|
+
- John Mettraux
|
31
|
+
files:
|
32
|
+
- lib/ru
|
33
|
+
- lib/exception.rb
|
34
|
+
- lib/codec.rb
|
35
|
+
- lib/otime.rb
|
36
|
+
- lib/worklistclient.rb
|
37
|
+
- lib/controlclient.rb
|
38
|
+
- lib/test.rb
|
39
|
+
- lib/utils.rb
|
40
|
+
- lib/workitem.rb
|
41
|
+
- lib/flowexpressionid.rb
|
42
|
+
- lib/osocket.rb
|
43
|
+
- lib/definitions.rb
|
44
|
+
- lib/restclient.rb
|
45
|
+
- lib/openwferu.rb
|
46
|
+
- lib/ru/participant.rb
|
47
|
+
- lib/ru/dollar.rb
|
48
|
+
- lib/ru/rudefinitions.rb
|
49
|
+
- lib/ru/scheduler.rb
|
50
|
+
- lib/ru/fe_concurrence.rb
|
51
|
+
- lib/ru/fe_base.rb
|
52
|
+
- lib/ru/expressionstorage.rb
|
53
|
+
- lib/ru/contextual.rb
|
54
|
+
- lib/ru/fe_value.rb
|
55
|
+
- lib/ru/logging.rb
|
56
|
+
- lib/ru/flowexpression.rb
|
57
|
+
- lib/ru/fe_participant.rb
|
58
|
+
- lib/ru/expressionpool.rb
|
59
|
+
- lib/ru/expressionmap.rb
|
60
|
+
- lib/ru/service.rb
|
61
|
+
- lib/ru/participants.rb
|
62
|
+
- lib/ru/schedulers.rb
|
63
|
+
- lib/ru/fe_subprocess.rb
|
64
|
+
- lib/ru/fe_raw.rb
|
65
|
+
- lib/ru/fe_define.rb
|
66
|
+
- lib/ru/environment.rb
|
67
|
+
- lib/ru/fe_misc.rb
|
68
|
+
- lib/ru/engine.rb
|
69
|
+
- lib/ru/ruutils.rb
|
70
|
+
- lib/ru/fe_time.rb
|
71
|
+
- lib/ru/fe_utils.rb
|
72
|
+
- lib/ru/participantmap.rb
|
73
|
+
- test/ft_2_concurrence.rb
|
74
|
+
- test/dollartest.rb
|
75
|
+
- test/timetest.rb
|
76
|
+
- test/flowtestbase.rb
|
77
|
+
- test/feitest.rb
|
78
|
+
- test/runtest.rb
|
79
|
+
- test/ft_3_equals.rb
|
80
|
+
- test/rutest_utils.rb
|
81
|
+
- test/ft_1_unset.rb
|
82
|
+
- test/ft_4_misc.rb
|
83
|
+
- test/ft_0.rb
|
84
|
+
- test/ft_5_time.rb
|
85
|
+
- test/misctest.rb
|
86
|
+
- README
|
87
|
+
test_files:
|
88
|
+
- test/runtest.rb
|
89
|
+
rdoc_options: []
|
90
|
+
|
91
|
+
extra_rdoc_files:
|
92
|
+
- README
|
93
|
+
executables: []
|
94
|
+
|
95
|
+
extensions: []
|
96
|
+
|
97
|
+
requirements: []
|
98
|
+
|
99
|
+
dependencies: []
|
100
|
+
|