@@ -119,14 +119,15 @@ test("transitions", function() {
119119 var fsm = StateMachine . create ( {
120120 initial : 'green' ,
121121 events : [
122- { name : 'warn' , from : 'green' , to : 'yellow' } ,
123- { name : 'panic' , from : 'yellow' , to : 'red' } ,
124- { name : 'calm' , from : 'red' , to : 'yellow' } ,
125- { name : 'clear' , from : 'yellow' , to : 'green' }
122+ { name : 'warn' , from : 'green' , to : 'yellow' } ,
123+ { name : 'panic' , from : 'yellow' , to : 'red' } ,
124+ { name : 'calm' , from : 'red' , to : 'yellow' } ,
125+ { name : 'clear' , from : 'yellow' , to : 'green' } ,
126+ { name : 'finish' , from : 'green' , to : 'done' } ,
126127 ] } ) ;
127128
128129 equal ( fsm . current , 'green' , 'current state should be yellow' ) ;
129- deepEqual ( fsm . transitions ( ) , [ 'warn' ] , 'current transition(s) should be yellow' ) ;
130+ deepEqual ( fsm . transitions ( ) , [ 'warn' , 'finish' ] , 'current transition(s) should be yellow' ) ;
130131
131132 fsm . warn ( ) ;
132133 equal ( fsm . current , 'yellow' , 'current state should be yellow' ) ;
@@ -142,7 +143,12 @@ test("transitions", function() {
142143
143144 fsm . clear ( ) ;
144145 equal ( fsm . current , 'green' , 'current state should be green' ) ;
145- deepEqual ( fsm . transitions ( ) , [ 'warn' ] , 'current transion(s) should be warn' ) ;
146+ deepEqual ( fsm . transitions ( ) , [ 'warn' , 'finish' ] , 'current transion(s) should be warn' ) ;
147+
148+ fsm . finish ( ) ;
149+ equal ( fsm . current , 'done' , 'current state should be done' ) ;
150+ deepEqual ( fsm . transitions ( ) , [ ] , 'current transition(s) should be empty' ) ;
151+
146152} ) ;
147153
148154//-----------------------------------------------------------------------------
0 commit comments