flamingo.me/flamingo-commerce/v3@v3.11.0/cart/domain/events/eventPublishing_test.go (about) 1 package events_test 2 3 import ( 4 "context" 5 "testing" 6 7 "flamingo.me/flamingo-commerce/v3/cart/domain/placeorder" 8 9 "flamingo.me/flamingo-commerce/v3/cart/domain/cart" 10 "flamingo.me/flamingo/v3/framework/flamingo" 11 ) 12 13 func TestDefaultEventPublisher_PublishOrderPlacedEvent(t *testing.T) { 14 type fields struct { 15 logger flamingo.Logger 16 } 17 type args struct { 18 ctx context.Context 19 cart *cart.Cart 20 placedOrderInfos placeorder.PlacedOrderInfos 21 } 22 tests := []struct { 23 name string 24 fields fields 25 args args 26 }{ 27 { 28 name: "test", 29 fields: fields{ 30 logger: flamingo.NullLogger{}, 31 }, 32 args: args{ 33 ctx: context.Background(), 34 cart: &cart.Cart{}, 35 placedOrderInfos: placeorder.PlacedOrderInfos{ 36 placeorder.PlacedOrderInfo{ 37 OrderNumber: "124", 38 DeliveryCode: "test_delivery", 39 }, 40 }, 41 }, 42 }, 43 } 44 for _, tt := range tests { 45 t.Run(tt.name, func(t *testing.T) { 46 47 //// prepare the wantEvent for the mocked event router 48 //wantEvent := &application.OrderPlacedEvent{ 49 // Cart: tt.args.cart, 50 // PlacedOrderInfos: tt.args.placedOrderInfos, 51 //} 52 // 53 //// prepare the event router 54 //eventRouter := new(mocks.Router) 55 //eventRouter.On( 56 // "Dispatch", 57 // context.Background(), 58 // mock.MatchedBy( 59 // func(e flamingo.Event) bool { 60 // if diff := deep.Equal(e, wantEvent); diff != nil { 61 // t.Logf("PublishOrderPlacedEvent got!=want, diff: %#v", diff) 62 // return false 63 // } 64 // 65 // return true 66 // }, 67 // ), 68 //).Return(nil) 69 // 70 //// prepare the event publisher 71 //dep := &application.DefaultEventPublisher{} 72 //dep.Inject( 73 // tt.fields.logger, 74 // eventRouter, 75 //) 76 // 77 //dep.PublishOrderPlacedEvent(tt.args.ctx, tt.args.cart, tt.args.placedOrderInfos) 78 //eventRouter.AssertExpectations(t) 79 //eventRouter.AssertNumberOfCalls(t, "Dispatch", 1) 80 }) 81 } 82 }