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