bumbleworks 0.0.88 → 0.0.89
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/bumbleworks/task.rb +12 -12
- data/lib/bumbleworks/version.rb +1 -1
- data/spec/lib/bumbleworks/task_spec.rb +34 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 20718cc55b3e2049dd69f7772e53842e8986207d
|
4
|
+
data.tar.gz: c6f332a2969e7c5b42ce2de781194011c5254664
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5441e543b1bc553e948df94b60073bac6377dd748d719b638254c3a19c79c4919370c5d621f8759ea57f8647e2bf667fc77738e973c7dc1176f612db68dce1c2
|
7
|
+
data.tar.gz: c46e6753af936b3fd24b311b553dbcf57d91b6e59b4d69f98cb54a12454fb5dad0a62d8171741c3c0fd23e5e30062beb0fa26142c93b3b23997d22ff28b8f5ef
|
data/lib/bumbleworks/task.rb
CHANGED
@@ -108,25 +108,25 @@ module Bumbleworks
|
|
108
108
|
call_hooks(:after, action, *args)
|
109
109
|
end
|
110
110
|
|
111
|
-
def with_hooks(action,
|
112
|
-
call_before_hooks(action,
|
111
|
+
def with_hooks(action, metadata, options = {})
|
112
|
+
call_before_hooks(action, metadata) unless options[:skip_callbacks]
|
113
113
|
yield
|
114
|
-
call_after_hooks(action,
|
114
|
+
call_after_hooks(action, metadata) unless options[:skip_callbacks]
|
115
115
|
end
|
116
116
|
|
117
117
|
# update workitem with changes to fields & params
|
118
|
-
def update(metadata = {})
|
119
|
-
with_hooks(:update, metadata) do
|
118
|
+
def update(metadata = {}, options = {})
|
119
|
+
with_hooks(:update, metadata, options) do
|
120
120
|
update_workitem
|
121
121
|
log(:update, metadata)
|
122
122
|
end
|
123
123
|
end
|
124
124
|
|
125
125
|
# proceed workitem (saving changes to fields)
|
126
|
-
def complete(metadata = {})
|
126
|
+
def complete(metadata = {}, options = {})
|
127
127
|
raise NotCompletable.new(not_completable_error_message) unless completable?
|
128
|
-
with_hooks(:update, metadata) do
|
129
|
-
with_hooks(:complete, metadata) do
|
128
|
+
with_hooks(:update, metadata, options) do
|
129
|
+
with_hooks(:complete, metadata, options) do
|
130
130
|
proceed_workitem
|
131
131
|
log(:complete, metadata)
|
132
132
|
end
|
@@ -144,8 +144,8 @@ module Bumbleworks
|
|
144
144
|
end
|
145
145
|
|
146
146
|
# Claim task and assign token to claimant
|
147
|
-
def claim(token)
|
148
|
-
with_hooks(:claim, token) do
|
147
|
+
def claim(token, options = {})
|
148
|
+
with_hooks(:claim, token, options) do
|
149
149
|
set_claimant(token)
|
150
150
|
log(:claim)
|
151
151
|
end
|
@@ -157,9 +157,9 @@ module Bumbleworks
|
|
157
157
|
end
|
158
158
|
|
159
159
|
# release claim on task.
|
160
|
-
def release
|
160
|
+
def release(options = {})
|
161
161
|
current_claimant = claimant
|
162
|
-
with_hooks(:release, current_claimant) do
|
162
|
+
with_hooks(:release, current_claimant, options) do
|
163
163
|
log(:release)
|
164
164
|
set_claimant(nil)
|
165
165
|
end
|
data/lib/bumbleworks/version.rb
CHANGED
@@ -787,6 +787,15 @@ describe Bumbleworks::Task do
|
|
787
787
|
task.claim(:doctor_claim)
|
788
788
|
end
|
789
789
|
|
790
|
+
it 'skips callbacks if requested' do
|
791
|
+
task = described_class.new(workflow_item)
|
792
|
+
allow(task).to receive(:log)
|
793
|
+
expect(task).to receive(:before_claim).never
|
794
|
+
expect(task).to receive(:set_claimant)
|
795
|
+
expect(task).to receive(:after_claim).never
|
796
|
+
task.claim(:doctor_claim, :skip_callbacks => true)
|
797
|
+
end
|
798
|
+
|
790
799
|
it 'logs event' do
|
791
800
|
log_entry = Bumbleworks.logger.entries.last[:entry]
|
792
801
|
expect(log_entry[:action]).to eq(:claim)
|
@@ -836,6 +845,13 @@ describe Bumbleworks::Task do
|
|
836
845
|
@task.release
|
837
846
|
end
|
838
847
|
|
848
|
+
it 'skips callbacks if requested' do
|
849
|
+
expect(@task).to receive(:call_before_hooks).never
|
850
|
+
expect(@task).to receive(:set_claimant)
|
851
|
+
expect(@task).to receive(:call_after_hooks).never
|
852
|
+
@task.release(:skip_callbacks => true)
|
853
|
+
end
|
854
|
+
|
839
855
|
it 'logs event' do
|
840
856
|
@task.release
|
841
857
|
log_entry = Bumbleworks.logger.entries.last[:entry]
|
@@ -875,6 +891,15 @@ describe Bumbleworks::Task do
|
|
875
891
|
task.update(:argue_mints)
|
876
892
|
end
|
877
893
|
|
894
|
+
it 'skips callbacks if requested' do
|
895
|
+
task = described_class.new(workflow_item)
|
896
|
+
allow(task).to receive(:log)
|
897
|
+
expect(task).to receive(:call_before_hooks).never
|
898
|
+
expect(task).to receive(:update_workitem)
|
899
|
+
expect(task).to receive(:call_after_hooks).never
|
900
|
+
task.update({:actual => :params}, {:skip_callbacks => true})
|
901
|
+
end
|
902
|
+
|
878
903
|
it 'reloads after updating workitem' do
|
879
904
|
event = Bumbleworks.dashboard.wait_for :dog_mouth
|
880
905
|
task = described_class.for_role('dog_mouth').first
|
@@ -945,6 +970,15 @@ describe Bumbleworks::Task do
|
|
945
970
|
task.complete(:argue_mints)
|
946
971
|
end
|
947
972
|
|
973
|
+
it 'skips callbacks if requested' do
|
974
|
+
task = described_class.new(workflow_item)
|
975
|
+
allow(task).to receive(:log)
|
976
|
+
expect(task).to receive(:call_before_hooks).never
|
977
|
+
expect(task).to receive(:proceed_workitem)
|
978
|
+
expect(task).to receive(:call_after_hooks).never
|
979
|
+
task.complete({:actual => :params}, {:skip_callbacks => true})
|
980
|
+
end
|
981
|
+
|
948
982
|
it 'logs event' do
|
949
983
|
event = Bumbleworks.dashboard.wait_for :dog_mouth
|
950
984
|
task = described_class.for_role('dog_mouth').first
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bumbleworks
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.89
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Maher Hawash
|
@@ -11,7 +11,7 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
|
-
date: 2014-
|
14
|
+
date: 2014-11-07 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: ruote
|