@@ -159,7 +159,7 @@ describe('lion-steps', () => {
159159 } ) ;
160160
161161 describe ( 'events' , ( ) => {
162- it ( 'will trigger lion-step @leave event before changing .current' , async ( ) => {
162+ it ( 'will fire lion-step @leave event before changing .current' , async ( ) => {
163163 let currentInLeaveEvent ;
164164 const onLeave = ev => {
165165 currentInLeaveEvent = ev . target . controller . current ;
@@ -175,7 +175,7 @@ describe('lion-steps', () => {
175175 expect ( currentInLeaveEvent ) . to . equal ( 0 ) ;
176176 } ) ;
177177
178- it ( 'will trigger lion-step @enter event after changing .current' , async ( ) => {
178+ it ( 'will fire lion-step @enter event after changing .current' , async ( ) => {
179179 let currentInEnterEvent ;
180180 const onEnter = ev => {
181181 currentInEnterEvent = ev . target . controller . current ;
@@ -190,6 +190,23 @@ describe('lion-steps', () => {
190190 el . next ( ) ;
191191 expect ( currentInEnterEvent ) . to . equal ( 1 ) ;
192192 } ) ;
193+
194+ it ( 'will fire initial @enter event only once if [initial-step] is not on first step' , async ( ) => {
195+ const firstEnterSpy = sinon . spy ( ) ;
196+ const secondEnterSpy = sinon . spy ( ) ;
197+ await fixture ( html `
198+ < lion-steps >
199+ < lion-step @enter =${ firstEnterSpy } >
200+ < div > test1</ div >
201+ </ lion-step >
202+ < lion-step initial-step @enter =${ secondEnterSpy } >
203+ < div > test2</ div >
204+ </ lion-step >
205+ </ lion-steps >
206+ ` ) ;
207+ expect ( firstEnterSpy ) . to . not . have . been . called ;
208+ expect ( secondEnterSpy ) . to . have . been . calledOnce ;
209+ } ) ;
193210 } ) ;
194211
195212 describe ( 'workflow with data and conditions' , ( ) => {
0 commit comments