flamingo.me/flamingo-commerce/v3@v3.11.0/checkout/domain/placeorder/states/failed_test.go (about) 1 package states_test 2 3 import ( 4 "context" 5 "testing" 6 7 "flamingo.me/flamingo-commerce/v3/checkout/domain/placeorder/process" 8 "flamingo.me/flamingo-commerce/v3/checkout/domain/placeorder/states" 9 "flamingo.me/flamingo/v3/framework/flamingo" 10 "github.com/stretchr/testify/assert" 11 "github.com/stretchr/testify/require" 12 ) 13 14 func TestFailed_IsFinal(t *testing.T) { 15 s := states.Failed{} 16 assert.True(t, s.IsFinal()) 17 } 18 19 func TestFailed_Name(t *testing.T) { 20 s := states.Failed{} 21 assert.Equal(t, "Failed", s.Name()) 22 } 23 24 func TestFailed_Rollback(t *testing.T) { 25 s := states.Failed{} 26 assert.Nil(t, s.Rollback(context.Background(), nil)) 27 } 28 29 func TestFailed_Run(t *testing.T) { 30 p := &process.Process{} 31 s := new(states.Failed).Inject(&eventRouter{ 32 validator: func(event flamingo.Event) { 33 require.IsType(t, &states.FailedEvent{}, event) 34 assert.Equal(t, event.(*states.FailedEvent).ProcessContext, p.Context()) 35 }, 36 }) 37 assert.Equal(t, s.Run(context.Background(), &process.Process{}), process.RunResult{}) 38 }