end_state 1.1.0 → 1.1.1
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.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5b3e18cd51ed06158bb7ed2b08c54bc8bfc9e46d
|
4
|
+
data.tar.gz: 160cda6e0637500fc5335ef0249d2803cf1991cb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0c44b0fbfaedf0bf7061d8204a93f25b0b08166a7e1e057a969d685a34130fb95939706d5e87d1af4a3f98fb33300b1a728c4378bb529115834bef9be6664fa5
|
7
|
+
data.tar.gz: c107d7cfd7a474d528b4c0295e6e806de98477d6860fd9e82c91e6a324724fc0623701472799b7383184bf2816a6e95a3f0d8b9965ae63f6a7470dccc501b570
|
@@ -85,7 +85,7 @@ module EndState
|
|
85
85
|
end
|
86
86
|
|
87
87
|
def __sm_invalid_event(event, mode)
|
88
|
-
fail InvalidTransition, "Transition by event: #{event} is invalid." if mode == :hard
|
88
|
+
Kernel.fail InvalidTransition, "Transition by event: #{event} is invalid." if mode == :hard
|
89
89
|
:__invalid_event__
|
90
90
|
end
|
91
91
|
|
@@ -103,10 +103,10 @@ module EndState
|
|
103
103
|
|
104
104
|
def __sm_block_transistion(state, mode)
|
105
105
|
if self.class.end_states.include? state
|
106
|
-
fail InvalidTransition, "The transition: #{object.state} => #{state} is invalid." if mode == :hard
|
106
|
+
Kernel.fail InvalidTransition, "The transition: #{object.state} => #{state} is invalid." if mode == :hard
|
107
107
|
return false
|
108
108
|
end
|
109
|
-
fail UnknownState, "The state: #{state} is unknown."
|
109
|
+
Kernel.fail UnknownState, "The state: #{state} is unknown."
|
110
110
|
end
|
111
111
|
|
112
112
|
def __sm_reset_messages
|
@@ -71,7 +71,7 @@ module EndState
|
|
71
71
|
|
72
72
|
def prevent_event_conflicts(start_state, event)
|
73
73
|
return unless transition_configurations.event_conflicts?(start_state, event)
|
74
|
-
fail EventConflict, "Attempting to define event '#{event}' on state '#{start_state}', but it is already defined. (Check duplicates and use of 'any_state')"
|
74
|
+
Kernel.fail EventConflict, "Attempting to define event '#{event}' on state '#{start_state}', but it is already defined. (Check duplicates and use of 'any_state')"
|
75
75
|
end
|
76
76
|
end
|
77
77
|
end
|
data/lib/end_state/transition.rb
CHANGED
@@ -31,7 +31,7 @@ module EndState
|
|
31
31
|
|
32
32
|
def failed(error, message)
|
33
33
|
return false unless mode == :hard
|
34
|
-
fail error, "The transition to #{state} was #{message}: #{object.failure_messages.join(', ')}"
|
34
|
+
Kernel.fail error, "The transition to #{state} was #{message}: #{object.failure_messages.join(', ')}"
|
35
35
|
end
|
36
36
|
|
37
37
|
def guard_failed
|
@@ -43,7 +43,7 @@ module EndState
|
|
43
43
|
end
|
44
44
|
|
45
45
|
def params_not_provided(params_list)
|
46
|
-
fail MissingParams, "Missing params: #{params_list.join(',')}"
|
46
|
+
Kernel.fail MissingParams, "Missing params: #{params_list.join(',')}"
|
47
47
|
end
|
48
48
|
|
49
49
|
def conclude(params={})
|
data/lib/end_state/version.rb
CHANGED
@@ -228,6 +228,27 @@ module EndState
|
|
228
228
|
expect(machine.state).to eq :end
|
229
229
|
end
|
230
230
|
end
|
231
|
+
|
232
|
+
context 'when a transition is named fail' do
|
233
|
+
let(:object) { OpenStruct.new(state: :a) }
|
234
|
+
before do
|
235
|
+
StateMachine.transition a: :c, as: :fail
|
236
|
+
StateMachine.transition c: :d, as: :other
|
237
|
+
end
|
238
|
+
|
239
|
+
it 'raises the proper error for invalid transitions' do
|
240
|
+
expect { machine.transition! :d }.to raise_error(InvalidTransition)
|
241
|
+
end
|
242
|
+
|
243
|
+
it 'raises the proper error for transitions to unknown states' do
|
244
|
+
expect { machine.transition(:no_state) }.to raise_error(UnknownState)
|
245
|
+
end
|
246
|
+
|
247
|
+
it 'transitions properly when directly calling fail' do
|
248
|
+
machine.fail!
|
249
|
+
expect(machine.state).to eq :c
|
250
|
+
end
|
251
|
+
end
|
231
252
|
end
|
232
253
|
|
233
254
|
describe '#can_transition?' do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: end_state
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- alexpeachey
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-06-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|