ellington 0.2.4 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +11 -1
- data/ellington.gemspec +32 -0
- data/lib/ellington/conductor.rb +5 -1
- data/lib/ellington/passenger.rb +5 -6
- data/lib/ellington/route.rb +0 -6
- data/lib/ellington/station.rb +3 -3
- data/lib/ellington/version.rb +1 -1
- data/pry +7 -0
- data/tags +248 -0
- data/test/attendant_test.rb +10 -10
- data/test/conductor_test.rb +1 -1
- data/test/line_info_test.rb +1 -1
- data/test/line_test.rb +1 -1
- data/test/passenger_test.rb +8 -8
- data/test/route_info_test.rb +1 -1
- data/test/route_test.rb +1 -1
- data/test/station_info_test.rb +1 -1
- data/test/station_test.rb +1 -1
- data/test/ticket_test.rb +1 -1
- data/test/transition_info_test.rb +1 -1
- metadata +20 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0344a5af66ee51ee3c8882f88c386dedb341af3f
|
4
|
+
data.tar.gz: 0c64f876cd88662cb4ed88b259d273de39531b20
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 24d6b1be361064d855ad38cc86bdd4eaf2bdf37eac484c7ed545b874675efab065f0abb0e804e43af5b1215856e037c5fc2ce9e62dd790b33e8c0ce2af1989f9
|
7
|
+
data.tar.gz: f0081020ed0c41b0d5688d7adafc398f5f891e84db510c1017d616478c282c8d4f6a65bc0f8ba2ea6e5e9905086e1acc03118fa772266f4463c8d409e1b29d8d
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
ellington (0.
|
4
|
+
ellington (0.3.0)
|
5
5
|
hero (~> 0.2.0)
|
6
6
|
ruby-graphviz (~> 1.2.1)
|
7
7
|
state_jacket (~> 0.1.1)
|
@@ -12,7 +12,12 @@ GEM
|
|
12
12
|
awesome_print (1.2.0)
|
13
13
|
binding_of_caller (0.7.2)
|
14
14
|
debug_inspector (>= 0.0.1)
|
15
|
+
byebug (3.5.1)
|
16
|
+
columnize (~> 0.8)
|
17
|
+
debugger-linecache (~> 1.2)
|
18
|
+
slop (~> 3.6)
|
15
19
|
coderay (1.1.0)
|
20
|
+
columnize (0.9.0)
|
16
21
|
coveralls (0.7.2)
|
17
22
|
multi_json (~> 1.3)
|
18
23
|
rest-client (= 1.6.7)
|
@@ -20,6 +25,7 @@ GEM
|
|
20
25
|
term-ansicolor (= 1.2.2)
|
21
26
|
thor (= 0.18.1)
|
22
27
|
debug_inspector (0.0.2)
|
28
|
+
debugger-linecache (1.2.0)
|
23
29
|
docile (1.1.5)
|
24
30
|
hero (0.2.0)
|
25
31
|
interception (0.5)
|
@@ -31,6 +37,9 @@ GEM
|
|
31
37
|
coderay (~> 1.1.0)
|
32
38
|
method_source (~> 0.8.1)
|
33
39
|
slop (~> 3.4)
|
40
|
+
pry-byebug (2.0.0)
|
41
|
+
byebug (~> 3.4)
|
42
|
+
pry (~> 0.10)
|
34
43
|
pry-rescue (1.4.1)
|
35
44
|
interception (>= 0.5)
|
36
45
|
pry
|
@@ -64,6 +73,7 @@ DEPENDENCIES
|
|
64
73
|
coveralls
|
65
74
|
ellington!
|
66
75
|
pry
|
76
|
+
pry-byebug
|
67
77
|
pry-rescue
|
68
78
|
pry-stack_explorer
|
69
79
|
pry-test
|
data/ellington.gemspec
ADDED
@@ -0,0 +1,32 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
require File.join(File.dirname(__FILE__), "lib", "ellington", "version")
|
3
|
+
|
4
|
+
Gem::Specification.new do |gem|
|
5
|
+
gem.name = "ellington"
|
6
|
+
gem.license = "MIT"
|
7
|
+
gem.version = Ellington::VERSION
|
8
|
+
gem.authors = ["Nathan Hopkins"]
|
9
|
+
gem.email = ["natehop@gmail.com"]
|
10
|
+
gem.homepage = "https://github.com/hopsoft/ellington"
|
11
|
+
gem.summary = "An opinionated framework for modeling complex business processes."
|
12
|
+
gem.description = "An opinionated framework for modeling complex business processes."
|
13
|
+
|
14
|
+
gem.files = Dir["lib/**/*.rb", "[A-Z]*"]
|
15
|
+
gem.test_files = Dir["test/**/*.rb"]
|
16
|
+
gem.require_paths = ["lib"]
|
17
|
+
|
18
|
+
gem.add_dependency "hero", "~> 0.2.0"
|
19
|
+
gem.add_dependency "state_jacket", "~> 0.1.1"
|
20
|
+
gem.add_dependency "ruby-graphviz", "~> 1.2.1"
|
21
|
+
|
22
|
+
gem.add_development_dependency "rake"
|
23
|
+
gem.add_development_dependency "awesome_print"
|
24
|
+
gem.add_development_dependency "pry"
|
25
|
+
gem.add_development_dependency "pry-test"
|
26
|
+
gem.add_development_dependency "pry-stack_explorer"
|
27
|
+
gem.add_development_dependency "pry-rescue"
|
28
|
+
gem.add_development_dependency "pry-byebug"
|
29
|
+
gem.add_development_dependency "spoof"
|
30
|
+
gem.add_development_dependency "simplecov"
|
31
|
+
gem.add_development_dependency "coveralls"
|
32
|
+
end
|
data/lib/ellington/conductor.rb
CHANGED
@@ -16,7 +16,11 @@ module Ellington
|
|
16
16
|
end
|
17
17
|
|
18
18
|
def conduct(passenger)
|
19
|
-
|
19
|
+
if !passenger.is_a?(Ellington::Passenger)
|
20
|
+
ticket = Ellington::Ticket.new
|
21
|
+
passenger = Ellington::Passenger.new(passenger, ticket: ticket, state_history: [])
|
22
|
+
end
|
23
|
+
passenger.current_state = route.initial_state
|
20
24
|
return unless verify(passenger)
|
21
25
|
route.lines.first.board passenger
|
22
26
|
end
|
data/lib/ellington/passenger.rb
CHANGED
@@ -4,11 +4,10 @@ module Ellington
|
|
4
4
|
class Passenger < SimpleDelegator
|
5
5
|
include Observable
|
6
6
|
attr_accessor :context, :ticket
|
7
|
-
attr_reader :
|
7
|
+
attr_reader :state_history
|
8
8
|
|
9
|
-
def initialize(context,
|
9
|
+
def initialize(context, ticket: Ellington::Ticket.new, state_history: [])
|
10
10
|
@context = context
|
11
|
-
@route = route
|
12
11
|
@ticket = ticket
|
13
12
|
@state_history = state_history
|
14
13
|
super context
|
@@ -28,8 +27,8 @@ module Ellington
|
|
28
27
|
(state_history & states).length == states.length
|
29
28
|
end
|
30
29
|
|
31
|
-
def transition_to(new_state)
|
32
|
-
if !
|
30
|
+
def transition_to(new_state, state_jacket: nil)
|
31
|
+
if !state_jacket.can_transition?(current_state => new_state)
|
33
32
|
message = "Cannot transition #{self.class.name} from:#{current_state} to:#{new_state}"
|
34
33
|
raise Ellington::InvalidStateTransition.new(message)
|
35
34
|
end
|
@@ -37,7 +36,7 @@ module Ellington
|
|
37
36
|
old_state = current_state
|
38
37
|
|
39
38
|
if context.respond_to?(:transition_to)
|
40
|
-
return_value = context.transition_to(new_state)
|
39
|
+
return_value = context.transition_to(new_state, state_jacket: state_jacket)
|
41
40
|
else
|
42
41
|
self.current_state = new_state
|
43
42
|
end
|
data/lib/ellington/route.rb
CHANGED
@@ -35,12 +35,6 @@ module Ellington
|
|
35
35
|
end
|
36
36
|
end
|
37
37
|
|
38
|
-
def create_passenger(context, ticket: Ellington::Ticket.new, state_history: [])
|
39
|
-
passenger = Passenger.new(context, route: self, ticket: ticket, state_history: state_history)
|
40
|
-
passenger.current_state = initial_state
|
41
|
-
passenger
|
42
|
-
end
|
43
|
-
|
44
38
|
class << self
|
45
39
|
include Observable
|
46
40
|
include HasTargets
|
data/lib/ellington/station.rb
CHANGED
@@ -84,15 +84,15 @@ module Ellington
|
|
84
84
|
end
|
85
85
|
|
86
86
|
def pass_passenger(passenger)
|
87
|
-
passenger.transition_to passed
|
87
|
+
passenger.transition_to passed, state_jacket: route.states
|
88
88
|
end
|
89
89
|
|
90
90
|
def fail_passenger(passenger)
|
91
|
-
passenger.transition_to failed
|
91
|
+
passenger.transition_to failed, state_jacket: route.states
|
92
92
|
end
|
93
93
|
|
94
94
|
def error_passenger(passenger)
|
95
|
-
passenger.transition_to errored
|
95
|
+
passenger.transition_to errored, state_jacket: route.states
|
96
96
|
end
|
97
97
|
|
98
98
|
def state(passenger)
|
data/lib/ellington/version.rb
CHANGED
data/pry
ADDED
data/tags
ADDED
@@ -0,0 +1,248 @@
|
|
1
|
+
!_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/
|
2
|
+
!_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/
|
3
|
+
!_TAG_PROGRAM_AUTHOR Darren Hiebert /dhiebert@users.sourceforge.net/
|
4
|
+
!_TAG_PROGRAM_NAME Exuberant Ctags //
|
5
|
+
!_TAG_PROGRAM_URL http://ctags.sourceforge.net /official site/
|
6
|
+
!_TAG_PROGRAM_VERSION 5.8 //
|
7
|
+
Add10 test/example.rb /^class Add10 < Ellington::Station$/;" c
|
8
|
+
Add100 test/example.rb /^class Add100 < Ellington::Station$/;" c
|
9
|
+
Add1000 test/example.rb /^class Add1000 < Ellington::Station$/;" c
|
10
|
+
AddStation examples/math_trick/stations/add_station.rb /^class AddStation < Ellington::Station$/;" c
|
11
|
+
Addition test/example.rb /^class Addition < Ellington::Line$/;" c
|
12
|
+
Attendant lib/ellington/attendant.rb /^ class Attendant$/;" c class:Ellington
|
13
|
+
AttendantDisapproves lib/ellington/errros.rb /^ class AttendantDisapproves < StandardError$/;" c class:Ellington
|
14
|
+
AttendantTest test/attendant_test.rb /^class AttendantTest < PryTest::Test$/;" c
|
15
|
+
BasicMath test/example.rb /^class BasicMath < Ellington::Route$/;" c
|
16
|
+
BillCreditCard examples/social_media/stations/bill_credit_card.rb /^class BillCreditCard < Ellington::Station$/;" c
|
17
|
+
Billing examples/social_media/lines/billing.rb /^class Billing < Ellington::Line$/;" c
|
18
|
+
Blast examples/social_media/routes/blast.rb /^class Blast < Ellington::Route$/;" c
|
19
|
+
BlastObserver examples/social_media/blast_observer.rb /^class BlastObserver$/;" c
|
20
|
+
CanPost examples/social_media/stations/can_post.rb /^class CanPost < Ellington::Station$/;" c
|
21
|
+
CanTweet examples/social_media/stations/can_tweet.rb /^class CanTweet < Ellington::Station$/;" c
|
22
|
+
Conductor lib/ellington/conductor.rb /^ class Conductor$/;" c class:Ellington
|
23
|
+
ConductorTest test/conductor_test.rb /^class ConductorTest < PryTest::Test$/;" c
|
24
|
+
Connection lib/ellington/connection.rb /^ class Connection$/;" c class:Ellington
|
25
|
+
ConnectionList lib/ellington/connection_list.rb /^ class ConnectionList < SimpleDelegator$/;" c class:Ellington
|
26
|
+
ConnectionTest test/connection_test.rb /^class ConnectionTest < PryTest::Test$/;" c
|
27
|
+
DivideBy10 test/example.rb /^class DivideBy10 < Ellington::Station$/;" c
|
28
|
+
DivideBy100 test/example.rb /^class DivideBy100 < Ellington::Station$/;" c
|
29
|
+
DivideBy1000 test/example.rb /^class DivideBy1000 < Ellington::Station$/;" c
|
30
|
+
Division test/example.rb /^class Division < Ellington::Line$/;" c
|
31
|
+
Ellington lib/ellington/attendant.rb /^module Ellington$/;" m
|
32
|
+
Ellington lib/ellington/conductor.rb /^module Ellington$/;" m
|
33
|
+
Ellington lib/ellington/connection.rb /^module Ellington$/;" m
|
34
|
+
Ellington lib/ellington/connection_list.rb /^module Ellington$/;" m
|
35
|
+
Ellington lib/ellington/errros.rb /^module Ellington$/;" m
|
36
|
+
Ellington lib/ellington/has_targets.rb /^module Ellington$/;" m
|
37
|
+
Ellington lib/ellington/line.rb /^module Ellington$/;" m
|
38
|
+
Ellington lib/ellington/line_info.rb /^module Ellington$/;" m
|
39
|
+
Ellington lib/ellington/line_list.rb /^module Ellington$/;" m
|
40
|
+
Ellington lib/ellington/logger.rb /^module Ellington$/;" m
|
41
|
+
Ellington lib/ellington/passenger.rb /^module Ellington$/;" m
|
42
|
+
Ellington lib/ellington/route.rb /^module Ellington$/;" m
|
43
|
+
Ellington lib/ellington/route_info.rb /^module Ellington$/;" m
|
44
|
+
Ellington lib/ellington/station.rb /^module Ellington$/;" m
|
45
|
+
Ellington lib/ellington/station_info.rb /^module Ellington$/;" m
|
46
|
+
Ellington lib/ellington/station_list.rb /^module Ellington$/;" m
|
47
|
+
Ellington lib/ellington/target.rb /^module Ellington$/;" m
|
48
|
+
Ellington lib/ellington/ticket.rb /^module Ellington$/;" m
|
49
|
+
Ellington lib/ellington/transition_info.rb /^module Ellington$/;" m
|
50
|
+
Ellington lib/ellington/unique_type_array.rb /^module Ellington$/;" m
|
51
|
+
Ellington lib/ellington/version.rb /^module Ellington$/;" m
|
52
|
+
Ellington lib/ellington/visualizer.rb /^module Ellington$/;" m
|
53
|
+
Facebook examples/social_media/lines/facebook.rb /^class Facebook < Ellington::Line$/;" c
|
54
|
+
FirstReverseStation examples/math_trick/stations/first_reverse_station.rb /^class FirstReverseStation < Ellington::Station$/;" c
|
55
|
+
HasTargets lib/ellington/has_targets.rb /^ module HasTargets$/;" m class:Ellington
|
56
|
+
InvalidStateTransition lib/ellington/errros.rb /^ class InvalidStateTransition < StandardError$/;" c class:Ellington
|
57
|
+
Line lib/ellington/line.rb /^ class Line$/;" c class:Ellington
|
58
|
+
LineInfo lib/ellington/line_info.rb /^ class LineInfo < SimpleDelegator$/;" c class:Ellington
|
59
|
+
LineInfoTest test/line_info_test.rb /^class LineInfoTest < PryTest::Test$/;" c
|
60
|
+
LineList lib/ellington/line_list.rb /^ class LineList < SimpleDelegator$/;" c class:Ellington
|
61
|
+
LineTest test/line_test.rb /^class LineTest < PryTest::Test$/;" c
|
62
|
+
ListAlreadyContainsType lib/ellington/errros.rb /^ class ListAlreadyContainsType < StandardError$/;" c class:Ellington
|
63
|
+
LoggerTest test/logger_test.rb /^class LoggerTest < PryTest::Test$/;" c
|
64
|
+
MathTrick examples/math_trick/routes/math_trick.rb /^class MathTrick < Ellington::Route$/;" c
|
65
|
+
MockStationHelper examples/social_media/stations/mock_station_helper.rb /^class MockStationHelper$/;" c
|
66
|
+
Multiplication test/example.rb /^class Multiplication < Ellington::Line$/;" c
|
67
|
+
MultiplyBy10 test/example.rb /^class MultiplyBy10 < Ellington::Station$/;" c
|
68
|
+
MultiplyBy100 test/example.rb /^class MultiplyBy100 < Ellington::Station$/;" c
|
69
|
+
MultiplyBy1000 test/example.rb /^class MultiplyBy1000 < Ellington::Station$/;" c
|
70
|
+
NoGoalDeclared lib/ellington/errros.rb /^ class NoGoalDeclared < StandardError$/;" c class:Ellington
|
71
|
+
NoGoalLine test/line_test.rb /^ class NoGoalLine < Ellington::Line$/;" c
|
72
|
+
NoGoalRoute test/route_test.rb /^ class NoGoalRoute < Ellington::Route$/;" c
|
73
|
+
NoLinesDeclared lib/ellington/errros.rb /^ class NoLinesDeclared < StandardError$/;" c class:Ellington
|
74
|
+
NoLinesRoute test/route_test.rb /^ class NoLinesRoute < Ellington::Route$/;" c class:RouteTest
|
75
|
+
NoStationsDeclared lib/ellington/errros.rb /^ class NoStationsDeclared < StandardError$/;" c class:Ellington
|
76
|
+
NoStationsLine test/line_test.rb /^ class NoStationsLine < Ellington::Line$/;" c class:LineTest
|
77
|
+
Node lib/ellington/visualizer.rb /^ class Node < SimpleDelegator$/;" c class:Ellington.Visualizer
|
78
|
+
NotImplementedError lib/ellington/errros.rb /^ class NotImplementedError < StandardError$/;" c class:Ellington
|
79
|
+
NumberWithHistory test/example.rb /^class NumberWithHistory$/;" c
|
80
|
+
Passenger lib/ellington/passenger.rb /^ class Passenger < SimpleDelegator$/;" c class:Ellington
|
81
|
+
PassengerTest test/passenger_test.rb /^class PassengerTest < PryTest::Test$/;" c
|
82
|
+
Post examples/social_media/stations/post.rb /^class Post < Ellington::Station$/;" c
|
83
|
+
Route lib/ellington/route.rb /^ class Route < SimpleDelegator$/;" c class:Ellington
|
84
|
+
RouteInfo lib/ellington/route_info.rb /^ class RouteInfo < SimpleDelegator$/;" c class:Ellington
|
85
|
+
RouteInfoTest test/route_info_test.rb /^class RouteInfoTest < PryTest::Test$/;" c
|
86
|
+
RouteTest test/route_test.rb /^class RouteTest < PryTest::Test$/;" c
|
87
|
+
SecondReverseStation examples/math_trick/stations/second_reverse_station.rb /^class SecondReverseStation < Ellington::Station$/;" c
|
88
|
+
SendBillingNotification examples/social_media/stations/send_billing_notification.rb /^class SendBillingNotification < Ellington::Station$/;" c
|
89
|
+
ShouldPost examples/social_media/stations/should_post.rb /^class ShouldPost < Ellington::Station$/;" c
|
90
|
+
ShouldTweet examples/social_media/stations/should_tweet.rb /^class ShouldTweet < Ellington::Station$/;" c
|
91
|
+
Station lib/ellington/station.rb /^ class Station$/;" c class:Ellington
|
92
|
+
StationInfo lib/ellington/station_info.rb /^ class StationInfo$/;" c class:Ellington
|
93
|
+
StationInfoTest test/station_info_test.rb /^class StationInfoTest < PryTest::Test$/;" c
|
94
|
+
StationList lib/ellington/station_list.rb /^ class StationList < SimpleDelegator$/;" c class:Ellington
|
95
|
+
StationTest test/station_test.rb /^class StationTest < PryTest::Test$/;" c
|
96
|
+
SubtractStation examples/math_trick/stations/subtract_station.rb /^class SubtractStation < Ellington::Station$/;" c
|
97
|
+
Target lib/ellington/target.rb /^ class Target < SimpleDelegator$/;" c class:Ellington
|
98
|
+
TargetTest test/target_test.rb /^class TargetTest < PryTest::Test$/;" c
|
99
|
+
Ticket lib/ellington/ticket.rb /^ class Ticket < SimpleDelegator$/;" c class:Ellington
|
100
|
+
TicketTest test/ticket_test.rb /^class TicketTest < PryTest::Test$/;" c
|
101
|
+
TransitionInfo lib/ellington/transition_info.rb /^ class TransitionInfo < Struct.new(:passenger, :old_state, :new_state)$/;" c class:Ellington
|
102
|
+
TransitionInfoTest test/transition_info_test.rb /^class TransitionInfoTest < PryTest::Test$/;" c
|
103
|
+
TrickWith1089 examples/math_trick/lines/trick_with_1089.rb /^class TrickWith1089 < Ellington::Line$/;" c
|
104
|
+
Tweet examples/social_media/stations/tweet.rb /^class Tweet < Ellington::Station$/;" c
|
105
|
+
Twitter examples/social_media/lines/twitter.rb /^class Twitter < Ellington::Line$/;" c
|
106
|
+
UniqueTypeArray lib/ellington/unique_type_array.rb /^ class UniqueTypeArray < SimpleDelegator$/;" c class:Ellington
|
107
|
+
UniqueTypeArrayTest test/unique_type_array_test.rb /^class UniqueTypeArrayTest < PryTest::Test$/;" c
|
108
|
+
User examples/social_media/user.rb /^class User$/;" c
|
109
|
+
VerifyCreditCard examples/social_media/stations/verify_credit_card.rb /^class VerifyCreditCard < Ellington::Station$/;" c
|
110
|
+
VerifyFacebookToken examples/social_media/stations/verify_facebook_token.rb /^class VerifyFacebookToken < Ellington::Station$/;" c
|
111
|
+
VerifyTwitterToken examples/social_media/stations/verify_twitter_token.rb /^class VerifyTwitterToken < Ellington::Station$/;" c
|
112
|
+
Visualizer lib/ellington/visualizer.rb /^ class Visualizer$/;" c class:Ellington
|
113
|
+
add lib/ellington/line_list.rb /^ def add(line)$/;" f class:Ellington.LineList
|
114
|
+
add lib/ellington/station_list.rb /^ def add(station)$/;" f class:Ellington.StationList
|
115
|
+
add lib/ellington/visualizer.rb /^ def add(node)$/;" f class:Ellington.Visualizer.Node
|
116
|
+
add_state_nodes_for_line lib/ellington/visualizer.rb /^ def add_state_nodes_for_line(cluster, line, passenger)$/;" f class:Ellington.Visualizer
|
117
|
+
approve? lib/ellington/attendant.rb /^ def approve?$/;" f class:Ellington.Attendant
|
118
|
+
board lib/ellington/line.rb /^ def board(passenger, options={})$/;" f class:Ellington
|
119
|
+
board lib/ellington/route.rb /^ def board(passenger, options={})$/;" f class:Ellington.Route
|
120
|
+
boarded? lib/ellington/line.rb /^ def boarded?(passenger)$/;" f class:Ellington
|
121
|
+
calc test/example.rb /^ def calc(operand, other)$/;" f class:NumberWithHistory
|
122
|
+
call lib/ellington/station.rb /^ def call(passenger, options={})$/;" f class:Ellington.Station
|
123
|
+
can_engage? lib/ellington/station.rb /^ def can_engage?(passenger, options={})$/;" f class:Ellington.Station
|
124
|
+
check lib/ellington/connection_list.rb /^ def check(connection)$/;" f class:Ellington.ConnectionList
|
125
|
+
check lib/ellington/unique_type_array.rb /^ def check(value)$/;" f class:Ellington.UniqueTypeArray
|
126
|
+
color_name lib/ellington/visualizer.rb /^ def color_name(graphviz_color)$/;" f class:Ellington.Visualizer
|
127
|
+
complete_line lib/ellington/line.rb /^ def complete_line(line_info)$/;" f class:Ellington
|
128
|
+
complete_route lib/ellington/route.rb /^ def complete_route(route_info)$/;" f class:Ellington.Route
|
129
|
+
conduct lib/ellington/conductor.rb /^ def conduct(passenger)$/;" f class:Ellington.Conductor
|
130
|
+
connect_to lib/ellington/route.rb /^ def connect_to(line, options)$/;" f class:Ellington.Route
|
131
|
+
connections lib/ellington/route.rb /^ def connections$/;" f class:Ellington.Route
|
132
|
+
contains_a? lib/ellington/unique_type_array.rb /^ def contains_a?(klass)$/;" f class:Ellington.UniqueTypeArray
|
133
|
+
current_message examples/social_media/user.rb /^ def current_message$/;" f class:User
|
134
|
+
current_state lib/ellington/passenger.rb /^ def current_state$/;" f class:Ellington.Passenger
|
135
|
+
current_state= lib/ellington/passenger.rb /^ def current_state=(value)$/;" f class:Ellington.Passenger
|
136
|
+
engage examples/math_trick/stations/add_station.rb /^ def engage(number, options={})$/;" f class:AddStation
|
137
|
+
engage examples/math_trick/stations/first_reverse_station.rb /^ def engage(number, options={})$/;" f class:FirstReverseStation
|
138
|
+
engage examples/math_trick/stations/second_reverse_station.rb /^ def engage(number, options={})$/;" f class:SecondReverseStation
|
139
|
+
engage examples/math_trick/stations/subtract_station.rb /^ def engage(number, options={})$/;" f class:SubtractStation
|
140
|
+
engage examples/social_media/stations/bill_credit_card.rb /^ def engage(user, options)$/;" f class:BillCreditCard
|
141
|
+
engage examples/social_media/stations/can_post.rb /^ def engage(user, options)$/;" f class:CanPost
|
142
|
+
engage examples/social_media/stations/can_tweet.rb /^ def engage(user, options)$/;" f class:CanTweet
|
143
|
+
engage examples/social_media/stations/post.rb /^ def engage(user, options)$/;" f class:Post
|
144
|
+
engage examples/social_media/stations/send_billing_notification.rb /^ def engage(user, options)$/;" f class:SendBillingNotification
|
145
|
+
engage examples/social_media/stations/should_post.rb /^ def engage(user, options)$/;" f class:ShouldPost
|
146
|
+
engage examples/social_media/stations/should_tweet.rb /^ def engage(user, options)$/;" f class:ShouldTweet
|
147
|
+
engage examples/social_media/stations/tweet.rb /^ def engage(user, options)$/;" f class:Tweet
|
148
|
+
engage examples/social_media/stations/verify_credit_card.rb /^ def engage(user, options)$/;" f class:VerifyCreditCard
|
149
|
+
engage examples/social_media/stations/verify_facebook_token.rb /^ def engage(user, options)$/;" f class:VerifyFacebookToken
|
150
|
+
engage examples/social_media/stations/verify_twitter_token.rb /^ def engage(user, options)$/;" f class:VerifyTwitterToken
|
151
|
+
engage lib/ellington/station.rb /^ def engage(passenger, options={})$/;" f class:Ellington.Station
|
152
|
+
engage test/example.rb /^ def engage(number, options)$/;" f class:Add10
|
153
|
+
engage test/example.rb /^ def engage(number, options)$/;" f class:Add100
|
154
|
+
engage test/example.rb /^ def engage(number, options)$/;" f class:Add1000
|
155
|
+
engage test/example.rb /^ def engage(number, options)$/;" f class:DivideBy10
|
156
|
+
engage test/example.rb /^ def engage(number, options)$/;" f class:DivideBy100
|
157
|
+
engage test/example.rb /^ def engage(number, options)$/;" f class:DivideBy1000
|
158
|
+
engage test/example.rb /^ def engage(number, options)$/;" f class:MultiplyBy10
|
159
|
+
engage test/example.rb /^ def engage(number, options)$/;" f class:MultiplyBy100
|
160
|
+
engage test/example.rb /^ def engage(number, options)$/;" f class:MultiplyBy1000
|
161
|
+
error_passenger lib/ellington/station.rb /^ def error_passenger(passenger)$/;" f class:Ellington.Station
|
162
|
+
error_target lib/ellington/has_targets.rb /^ def error_target$/;" f class:Ellington.HasTargets
|
163
|
+
errored lib/ellington/station.rb /^ def errored$/;" f class:Ellington.Station
|
164
|
+
fail_passenger lib/ellington/station.rb /^ def fail_passenger(passenger)$/;" f class:Ellington.Station
|
165
|
+
fail_target lib/ellington/has_targets.rb /^ def fail_target$/;" f class:Ellington.HasTargets
|
166
|
+
failed lib/ellington/station.rb /^ def failed$/;" f class:Ellington.Station
|
167
|
+
find lib/ellington/visualizer.rb /^ def find(context)$/;" f class:Ellington.Visualizer.Node
|
168
|
+
find_by_type lib/ellington/line_list.rb /^ def find_by_type(type)$/;" f class:Ellington.LineList
|
169
|
+
find_by_type lib/ellington/station_list.rb /^ def find_by_type(type)$/;" f class:Ellington.StationList
|
170
|
+
formula lib/ellington/line.rb /^ def formula$/;" f class:Ellington
|
171
|
+
graph_lines lib/ellington/visualizer.rb /^ def graph_lines(passenger=nil)$/;" f class:Ellington.Visualizer
|
172
|
+
graph_lines_basic lib/ellington/visualizer.rb /^ def graph_lines_basic(passenger=nil)$/;" f class:Ellington.Visualizer
|
173
|
+
graph_route lib/ellington/visualizer.rb /^ def graph_route(passenger=nil)$/;" f class:Ellington.Visualizer
|
174
|
+
graph_route_basic lib/ellington/visualizer.rb /^ def graph_route_basic(passenger=nil)$/;" f class:Ellington.Visualizer
|
175
|
+
id examples/social_media/user.rb /^ def id$/;" f class:User
|
176
|
+
id lib/ellington/ticket.rb /^ def id$/;" f class:Ellington.Ticket
|
177
|
+
include? lib/ellington/target.rb /^ def include?(state)$/;" f class:Ellington.Target
|
178
|
+
inherited lib/ellington/route.rb /^ def inherited(subclass)$/;" f class:Ellington.Route
|
179
|
+
initial_state lib/ellington/route.rb /^ def initial_state$/;" f class:Ellington.Route
|
180
|
+
initial_states lib/ellington/line.rb /^ def initial_states$/;" f class:Ellington
|
181
|
+
initial_states lib/ellington/station.rb /^ def initial_states$/;" f class:Ellington.Station
|
182
|
+
initialize examples/social_media/blast_observer.rb /^ def initialize$/;" f class:BlastObserver
|
183
|
+
initialize examples/social_media/stations/mock_station_helper.rb /^ def initialize(station)$/;" f class:MockStationHelper
|
184
|
+
initialize lib/ellington/attendant.rb /^ def initialize(station)$/;" f class:Ellington.Attendant
|
185
|
+
initialize lib/ellington/conductor.rb /^ def initialize(route)$/;" f class:Ellington.Conductor
|
186
|
+
initialize lib/ellington/connection.rb /^ def initialize(line, type, *states)$/;" f class:Ellington.Connection
|
187
|
+
initialize lib/ellington/connection_list.rb /^ def initialize$/;" f class:Ellington.ConnectionList
|
188
|
+
initialize lib/ellington/line.rb /^ def initialize$/;" f class:Ellington
|
189
|
+
initialize lib/ellington/line_info.rb /^ def initialize(line, station_info)$/;" f class:Ellington.LineInfo
|
190
|
+
initialize lib/ellington/line_list.rb /^ def initialize(route_class)$/;" f class:Ellington.LineList
|
191
|
+
initialize lib/ellington/passenger.rb /^ def initialize(context, route, options={})$/;" f class:Ellington.Passenger
|
192
|
+
initialize lib/ellington/route.rb /^ def initialize$/;" f class:Ellington.Route
|
193
|
+
initialize lib/ellington/route_info.rb /^ def initialize(route, line_info)$/;" f class:Ellington.RouteInfo
|
194
|
+
initialize lib/ellington/station_info.rb /^ def initialize(station, passenger, transition, options)$/;" f class:Ellington.StationInfo
|
195
|
+
initialize lib/ellington/station_list.rb /^ def initialize(line_class)$/;" f class:Ellington.StationList
|
196
|
+
initialize lib/ellington/target.rb /^ def initialize(*states)$/;" f class:Ellington.Target
|
197
|
+
initialize lib/ellington/ticket.rb /^ def initialize(goal=nil, hash={})$/;" f class:Ellington.Ticket
|
198
|
+
initialize lib/ellington/unique_type_array.rb /^ def initialize$/;" f class:Ellington.UniqueTypeArray
|
199
|
+
initialize lib/ellington/visualizer.rb /^ def initialize(base, viz)$/;" f class:Ellington.Visualizer.Node
|
200
|
+
initialize lib/ellington/visualizer.rb /^ def initialize(route, format=:svg)$/;" f class:Ellington.Visualizer
|
201
|
+
initialize test/example.rb /^ def initialize(value)$/;" f class:NumberWithHistory
|
202
|
+
initialize_lines lib/ellington/route.rb /^ def initialize_lines$/;" f class:Ellington.Route
|
203
|
+
initialized? lib/ellington/route.rb /^ def initialized?$/;" f class:Ellington.Route
|
204
|
+
line_completed lib/ellington/route.rb /^ def line_completed(line_info)$/;" f class:Ellington.Route
|
205
|
+
lines lib/ellington/route.rb /^ def lines$/;" f class:Ellington.Route
|
206
|
+
log lib/ellington/line.rb /^ def log(line_info, options={})$/;" f class:Ellington
|
207
|
+
log lib/ellington/route.rb /^ def log(route_info)$/;" f class:Ellington.Route
|
208
|
+
log_message lib/ellington/line_info.rb /^ def log_message(options={})$/;" f class:Ellington.LineInfo
|
209
|
+
log_message lib/ellington/route_info.rb /^ def log_message(options={})$/;" f class:Ellington.RouteInfo
|
210
|
+
log_options lib/ellington/route.rb /^ def log_options(options={})$/;" f class:Ellington.Route
|
211
|
+
logger lib/ellington/logger.rb /^ def self.logger$/;" F class:Ellington
|
212
|
+
logger lib/ellington/logger.rb /^ def self.logger=(value)$/;" F class:Ellington
|
213
|
+
mock_engage examples/social_media/stations/mock_station_helper.rb /^ def mock_engage(user, options)$/;" f class:MockStationHelper
|
214
|
+
name lib/ellington/line.rb /^ def name$/;" f class:Ellington
|
215
|
+
name lib/ellington/station.rb /^ def name$/;" f class:Ellington.Station
|
216
|
+
name lib/ellington/visualizer.rb /^ def name$/;" f class:Ellington.Visualizer.Node
|
217
|
+
pass_passenger lib/ellington/station.rb /^ def pass_passenger(passenger)$/;" f class:Ellington.Station
|
218
|
+
pass_target lib/ellington/line.rb /^ def pass_target(*states)$/;" f class:Ellington.Line
|
219
|
+
pass_target lib/ellington/route.rb /^ def pass_target(*line_goals)$/;" f class:Ellington.Route
|
220
|
+
passed lib/ellington/station.rb /^ def passed$/;" f class:Ellington.Station
|
221
|
+
push lib/ellington/connection_list.rb /^ def push(connection)$/;" f class:Ellington.ConnectionList
|
222
|
+
push lib/ellington/line_list.rb /^ def push(line)$/;" f class:Ellington.LineList
|
223
|
+
push lib/ellington/station_list.rb /^ def push(station)$/;" f class:Ellington.StationList
|
224
|
+
push lib/ellington/unique_type_array.rb /^ def push(value)$/;" f class:Ellington.UniqueTypeArray
|
225
|
+
required? lib/ellington/connection.rb /^ def required?(passenger)$/;" f class:Ellington.Connection
|
226
|
+
required_connections lib/ellington/route.rb /^ def required_connections(passenger)$/;" f class:Ellington.Route
|
227
|
+
route_completed examples/social_media/blast_observer.rb /^ def route_completed(route_info)$/;" f class:BlastObserver
|
228
|
+
satisfied? lib/ellington/target.rb /^ def satisfied?(passenger)$/;" f class:Ellington.Target
|
229
|
+
set_cluster_defaults lib/ellington/visualizer.rb /^ def set_cluster_defaults(cluster)$/;" f class:Ellington.Visualizer
|
230
|
+
set_graph_defaults lib/ellington/visualizer.rb /^ def set_graph_defaults(graph)$/;" f class:Ellington.Visualizer
|
231
|
+
state lib/ellington/has_targets.rb /^ def state(passenger)$/;" f class:Ellington.HasTargets
|
232
|
+
state lib/ellington/station.rb /^ def state(passenger)$/;" f class:Ellington.Station
|
233
|
+
state_history_includes? lib/ellington/passenger.rb /^ def state_history_includes?(*states)$/;" f class:Ellington.Passenger
|
234
|
+
state_name lib/ellington/station.rb /^ def state_name(state)$/;" f class:Ellington.Station
|
235
|
+
state_names lib/ellington/has_targets.rb /^ def state_names(states)$/;" f class:Ellington.HasTargets
|
236
|
+
states lib/ellington/line.rb /^ def states$/;" f class:Ellington
|
237
|
+
states lib/ellington/route.rb /^ def states$/;" f class:Ellington.Route
|
238
|
+
states lib/ellington/station.rb /^ def states$/;" f class:Ellington.Station
|
239
|
+
station_completed lib/ellington/line.rb /^ def station_completed(station_info)$/;" f class:Ellington
|
240
|
+
station_full_name lib/ellington/line_info.rb /^ def station_full_name$/;" f class:Ellington.LineInfo
|
241
|
+
stations lib/ellington/line.rb /^ def stations$/;" f class:Ellington.Line
|
242
|
+
style_node lib/ellington/visualizer.rb /^ def style_node(node, color)$/;" f class:Ellington.Visualizer
|
243
|
+
style_node_for_line lib/ellington/visualizer.rb /^ def style_node_for_line(node, line, *states)$/;" f class:Ellington.Visualizer
|
244
|
+
style_node_for_passenger lib/ellington/visualizer.rb /^ def style_node_for_passenger(node, passenger, *states)$/;" f class:Ellington.Visualizer
|
245
|
+
style_node_for_route lib/ellington/visualizer.rb /^ def style_node_for_route(node, route, *states)$/;" f class:Ellington.Visualizer
|
246
|
+
transition_to lib/ellington/passenger.rb /^ def transition_to(new_state)$/;" f class:Ellington.Passenger
|
247
|
+
update lib/ellington/attendant.rb /^ def update(transition_info)$/;" f class:Ellington.Attendant
|
248
|
+
verify lib/ellington/conductor.rb /^ def verify(passenger)$/;" f class:Ellington.Conductor
|
data/test/attendant_test.rb
CHANGED
@@ -3,34 +3,34 @@ require_relative "test_helper"
|
|
3
3
|
class AttendantTest < PryTest::Test
|
4
4
|
|
5
5
|
before do
|
6
|
-
route = BasicMath.new
|
7
|
-
line = route.lines.first
|
6
|
+
@route = BasicMath.new
|
7
|
+
line = @route.lines.first
|
8
8
|
@station = line.stations.first
|
9
|
-
@passenger = Ellington::Passenger.new(NumberWithHistory.new(0)
|
10
|
-
@passenger.current_state = route.initial_state
|
9
|
+
@passenger = Ellington::Passenger.new(NumberWithHistory.new(0))
|
10
|
+
@passenger.current_state = @route.initial_state
|
11
11
|
@attendant = Ellington::Attendant.new(@station)
|
12
12
|
@passenger.add_observer @attendant
|
13
13
|
end
|
14
14
|
|
15
15
|
test "passenger transition is captured" do
|
16
|
-
@passenger.transition_to @station.passed
|
16
|
+
@passenger.transition_to @station.passed, state_jacket: @route.states
|
17
17
|
assert @attendant.passenger_transitions.length == 1
|
18
18
|
end
|
19
19
|
|
20
20
|
test "approves of single passenger transition" do
|
21
|
-
@passenger.transition_to @station.passed
|
21
|
+
@passenger.transition_to @station.passed, state_jacket: @route.states
|
22
22
|
assert @attendant.approve?
|
23
23
|
end
|
24
24
|
|
25
25
|
test "multiple passenger transitions are captured" do
|
26
|
-
@passenger.transition_to @station.errored
|
27
|
-
@passenger.transition_to @station.passed
|
26
|
+
@passenger.transition_to @station.errored, state_jacket: @route.states
|
27
|
+
@passenger.transition_to @station.passed, state_jacket: @route.states
|
28
28
|
assert @attendant.passenger_transitions.length == 2
|
29
29
|
end
|
30
30
|
|
31
31
|
test "disapproves of multiple passenger transitions" do
|
32
|
-
@passenger.transition_to @station.errored
|
33
|
-
@passenger.transition_to @station.passed
|
32
|
+
@passenger.transition_to @station.errored, state_jacket: @route.states
|
33
|
+
@passenger.transition_to @station.passed, state_jacket: @route.states
|
34
34
|
assert !@attendant.approve?
|
35
35
|
end
|
36
36
|
|
data/test/conductor_test.rb
CHANGED
@@ -5,7 +5,7 @@ class ConductorTest < PryTest::Test
|
|
5
5
|
before do
|
6
6
|
@route = BasicMath.new
|
7
7
|
@conductor = Ellington::Conductor.new(@route)
|
8
|
-
@passenger = Ellington::Passenger.new(NumberWithHistory.new(0)
|
8
|
+
@passenger = Ellington::Passenger.new(NumberWithHistory.new(0))
|
9
9
|
@passenger.current_state = @route.initial_state
|
10
10
|
end
|
11
11
|
|
data/test/line_info_test.rb
CHANGED
@@ -6,7 +6,7 @@ class LineInfoTest < PryTest::Test
|
|
6
6
|
@route = BasicMath.new
|
7
7
|
@line = @route.lines.first
|
8
8
|
@station = @line.stations.first
|
9
|
-
@passenger = Ellington::Passenger.new(NumberWithHistory.new(0)
|
9
|
+
@passenger = Ellington::Passenger.new(NumberWithHistory.new(0))
|
10
10
|
@transition_info = Ellington::TransitionInfo.new(@passenger, @route.initial_state, @station.passed)
|
11
11
|
@station_info = Ellington::StationInfo.new(@station, @passenger, @transition_info)
|
12
12
|
@line_info = Ellington::LineInfo.new(@line, @station_info)
|
data/test/line_test.rb
CHANGED
@@ -5,7 +5,7 @@ class LineTest < PryTest::Test
|
|
5
5
|
before do
|
6
6
|
@route = BasicMath.new
|
7
7
|
@line = @route.lines.first
|
8
|
-
@passenger = Ellington::Passenger.new(NumberWithHistory.new(0)
|
8
|
+
@passenger = Ellington::Passenger.new(NumberWithHistory.new(0))
|
9
9
|
end
|
10
10
|
|
11
11
|
test "must declare stations" do
|
data/test/passenger_test.rb
CHANGED
@@ -5,23 +5,23 @@ class PassengerTest < PryTest::Test
|
|
5
5
|
before do
|
6
6
|
@route = BasicMath.new
|
7
7
|
@number = NumberWithHistory.new(0)
|
8
|
-
@passenger = Ellington::Passenger.new(@number
|
8
|
+
@passenger = Ellington::Passenger.new(@number)
|
9
9
|
end
|
10
10
|
|
11
11
|
test "construct with ticket option" do
|
12
12
|
ticket = Ellington::Ticket.new
|
13
|
-
passenger = Ellington::Passenger.new(@number,
|
13
|
+
passenger = Ellington::Passenger.new(@number, :ticket => ticket)
|
14
14
|
assert passenger.ticket == ticket
|
15
15
|
end
|
16
16
|
|
17
17
|
test "construct with state_history option" do
|
18
|
-
passenger = Ellington::Passenger.new(@number,
|
18
|
+
passenger = Ellington::Passenger.new(@number, :state_history => [:foo, :bar])
|
19
19
|
assert passenger.state_history == [:foo, :bar]
|
20
20
|
end
|
21
21
|
|
22
22
|
test "transition_to valid state" do
|
23
23
|
@passenger.current_state = @route.initial_state
|
24
|
-
@passenger.transition_to @route.lines.first.states.keys.first
|
24
|
+
@passenger.transition_to @route.lines.first.states.keys.first, state_jacket: @route.states
|
25
25
|
assert @passenger.current_state == @route.lines.first.states.keys.first
|
26
26
|
end
|
27
27
|
|
@@ -29,7 +29,7 @@ class PassengerTest < PryTest::Test
|
|
29
29
|
error = nil
|
30
30
|
begin
|
31
31
|
@passenger.current_state = :error
|
32
|
-
@passenger.transition_to :happy
|
32
|
+
@passenger.transition_to :happy, state_jacket: @route.states
|
33
33
|
rescue Ellington::InvalidStateTransition => e
|
34
34
|
error = e
|
35
35
|
end
|
@@ -46,7 +46,7 @@ class PassengerTest < PryTest::Test
|
|
46
46
|
|
47
47
|
@passenger.add_observer(watcher)
|
48
48
|
@passenger.current_state = @route.initial_state
|
49
|
-
@passenger.transition_to @route.lines.first.states.keys.first
|
49
|
+
@passenger.transition_to @route.lines.first.states.keys.first, state_jacket: @route.states
|
50
50
|
|
51
51
|
assert watcher.info.passenger == @passenger
|
52
52
|
assert watcher.info.old_state == "PRE BasicMath"
|
@@ -55,8 +55,8 @@ class PassengerTest < PryTest::Test
|
|
55
55
|
|
56
56
|
test "state_history" do
|
57
57
|
@passenger.current_state = @route.initial_state
|
58
|
-
@passenger.transition_to @route.lines[0].states.keys.first
|
59
|
-
@passenger.transition_to @route.lines[2].states.keys.first
|
58
|
+
@passenger.transition_to @route.lines[0].states.keys.first, state_jacket: @route.states
|
59
|
+
@passenger.transition_to @route.lines[2].states.keys.first, state_jacket: @route.states
|
60
60
|
assert @passenger.state_history == ["PASS Addition Add10", "PASS Multiplication MultiplyBy10"]
|
61
61
|
end
|
62
62
|
|
data/test/route_info_test.rb
CHANGED
@@ -6,7 +6,7 @@ class RouteInfoTest < PryTest::Test
|
|
6
6
|
@route = BasicMath.new
|
7
7
|
@line = @route.lines.first
|
8
8
|
@station = @line.stations.first
|
9
|
-
@passenger = Ellington::Passenger.new(NumberWithHistory.new(0)
|
9
|
+
@passenger = Ellington::Passenger.new(NumberWithHistory.new(0))
|
10
10
|
@passenger.current_state = @route.lines.last.passed.first
|
11
11
|
@transition_info = Ellington::TransitionInfo.new(@passenger, @route.initial_state, @station.passed)
|
12
12
|
@station_info = Ellington::StationInfo.new(@station, @passenger, @transition_info)
|
data/test/route_test.rb
CHANGED
data/test/station_info_test.rb
CHANGED
@@ -6,7 +6,7 @@ class StationInfoTest < PryTest::Test
|
|
6
6
|
@route = BasicMath.new
|
7
7
|
@line = @route.lines.first
|
8
8
|
@station = @line.stations.first
|
9
|
-
@passenger = Ellington::Passenger.new(NumberWithHistory.new(0)
|
9
|
+
@passenger = Ellington::Passenger.new(NumberWithHistory.new(0))
|
10
10
|
@transition_info = Ellington::TransitionInfo.new(@passenger, @route.initial_state, @station.passed)
|
11
11
|
@station_info = Ellington::StationInfo.new(@station, @passenger, @transition_info)
|
12
12
|
end
|
data/test/station_test.rb
CHANGED
@@ -6,7 +6,7 @@ class StationTest < PryTest::Test
|
|
6
6
|
@route = BasicMath.new
|
7
7
|
@line = @route.lines.first
|
8
8
|
@station = @line.stations.first
|
9
|
-
@passenger = Ellington::Passenger.new(NumberWithHistory.new(0)
|
9
|
+
@passenger = Ellington::Passenger.new(NumberWithHistory.new(0))
|
10
10
|
@passenger.current_state = @route.initial_state
|
11
11
|
end
|
12
12
|
|
data/test/ticket_test.rb
CHANGED
@@ -10,7 +10,7 @@ class TicketTest < PryTest::Test
|
|
10
10
|
:debit_id => "b834fb69-2eb3-4e57-b313-16b863e91f74",
|
11
11
|
:credit_id => "9a670fce-4826-4a90-aaf7-a58738a4ce5b"
|
12
12
|
)
|
13
|
-
@passenger = Ellington::Passenger.new(0,
|
13
|
+
@passenger = Ellington::Passenger.new(0, :ticket => @ticket)
|
14
14
|
end
|
15
15
|
|
16
16
|
test "basic ticket" do
|
@@ -6,7 +6,7 @@ class TransitionInfoTest < PryTest::Test
|
|
6
6
|
@route = BasicMath.new
|
7
7
|
@line = @route.lines.first
|
8
8
|
@station = @line.stations.first
|
9
|
-
@passenger = Ellington::Passenger.new(NumberWithHistory.new(0)
|
9
|
+
@passenger = Ellington::Passenger.new(NumberWithHistory.new(0))
|
10
10
|
@transition_info = Ellington::TransitionInfo.new(@passenger, @route.initial_state, @station.passed)
|
11
11
|
end
|
12
12
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ellington
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nathan Hopkins
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2015-01-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: hero
|
@@ -136,6 +136,20 @@ dependencies:
|
|
136
136
|
- - ">="
|
137
137
|
- !ruby/object:Gem::Version
|
138
138
|
version: '0'
|
139
|
+
- !ruby/object:Gem::Dependency
|
140
|
+
name: pry-byebug
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
142
|
+
requirements:
|
143
|
+
- - ">="
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: '0'
|
146
|
+
type: :development
|
147
|
+
prerelease: false
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
149
|
+
requirements:
|
150
|
+
- - ">="
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: '0'
|
139
153
|
- !ruby/object:Gem::Dependency
|
140
154
|
name: spoof
|
141
155
|
requirement: !ruby/object:Gem::Requirement
|
@@ -190,6 +204,7 @@ files:
|
|
190
204
|
- LICENSE.txt
|
191
205
|
- README.md
|
192
206
|
- Rakefile
|
207
|
+
- ellington.gemspec
|
193
208
|
- lib/ellington.rb
|
194
209
|
- lib/ellington/attendant.rb
|
195
210
|
- lib/ellington/conductor.rb
|
@@ -213,6 +228,8 @@ files:
|
|
213
228
|
- lib/ellington/unique_type_array.rb
|
214
229
|
- lib/ellington/version.rb
|
215
230
|
- lib/ellington/visualizer.rb
|
231
|
+
- pry
|
232
|
+
- tags
|
216
233
|
- test/attendant_test.rb
|
217
234
|
- test/conductor_test.rb
|
218
235
|
- test/connection_test.rb
|
@@ -250,7 +267,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
250
267
|
version: '0'
|
251
268
|
requirements: []
|
252
269
|
rubyforge_project:
|
253
|
-
rubygems_version: 2.
|
270
|
+
rubygems_version: 2.4.5
|
254
271
|
signing_key:
|
255
272
|
specification_version: 4
|
256
273
|
summary: An opinionated framework for modeling complex business processes.
|
@@ -272,4 +289,3 @@ test_files:
|
|
272
289
|
- test/ticket_test.rb
|
273
290
|
- test/transition_info_test.rb
|
274
291
|
- test/unique_type_array_test.rb
|
275
|
-
has_rdoc:
|