@@ -33,8 +33,8 @@ type testSubscriber struct {
3333}
3434
3535// Implements api.MessageSubscriber.
36- func (s * testSubscriber ) ExecuteMessage (_ * api.Context , _ , msg any ) (any , error ) {
37- switch m := msg .(type ) {
36+ func (s * testSubscriber ) ExecuteMessage (_ * api.Context , msg api. Message ) (any , error ) {
37+ switch m := msg .Data . (type ) {
3838 case * testMessage :
3939 s .msgs = append (s .msgs , m .foo )
4040 if s .fail {
@@ -66,40 +66,58 @@ func TestMessageDispatcher(t *testing.T) {
6666 md := newMessageDispatcher ()
6767
6868 // Publish without subscribers should work.
69- res , err := md .Publish (ctx , testMessageA , & testMessage {foo : 42 })
69+ res , err := md .Publish (ctx , api.Message {
70+ Kind : testMessageA ,
71+ Data : & testMessage {foo : 42 },
72+ })
7073 require .Error (err , "Publish" )
7174 require .Equal (api .ErrNoSubscribers , err )
7275 require .Nil (res , "Publish results should be empty" )
7376
7477 // With a disabled subscriber should behave same as with no subscribers.
7578 var ms testSubscriber
7679 md .Subscribe (testMessageA , & ms )
77- res , err = md .Publish (ctx , testMessageA , & testMessage {foo : 42 })
80+ res , err = md .Publish (ctx , api.Message {
81+ Kind : testMessageA ,
82+ Data : & testMessage {foo : 42 },
83+ })
7884 require .Error (err , "Publish" )
7985 require .Equal (api .ErrNoSubscribers , err )
8086 require .Nil (res , "Publish results should be empty" )
8187 require .Empty (ms .msgs , "no messages should be delivered when subscriber is disabled" )
8288
8389 // With an enabled subscriber.
8490 ms .enabled = true
85- res , err = md .Publish (ctx , testMessageA , & testMessage {foo : 42 })
91+ res , err = md .Publish (ctx , api.Message {
92+ Kind : testMessageA ,
93+ Data : & testMessage {foo : 42 },
94+ })
8695 require .NoError (err , "Publish" )
8796 require .EqualValues (int32 (42 ), res , "correct publish message result" )
8897 require .EqualValues ([]int32 {42 }, ms .msgs , "correct messages should be delivered" )
8998
90- res , err = md .Publish (ctx , testMessageA , & testMessage {foo : 43 })
99+ res , err = md .Publish (ctx , api.Message {
100+ Kind : testMessageA ,
101+ Data : & testMessage {foo : 43 },
102+ })
91103 require .NoError (err , "Publish" )
92104 require .EqualValues (int32 (43 ), res , "correct publish message result" )
93105 require .EqualValues ([]int32 {42 , 43 }, ms .msgs , "correct messages should be delivered" )
94106
95- res , err = md .Publish (ctx , testMessageB , & testMessage {foo : 44 })
107+ res , err = md .Publish (ctx , api.Message {
108+ Kind : testMessageB ,
109+ Data : & testMessage {foo : 44 },
110+ })
96111 require .Error (err , "Publish" )
97112 require .Equal (api .ErrNoSubscribers , err )
98113 require .Nil (res , "publish message results should be empty" )
99114 require .EqualValues ([]int32 {42 , 43 }, ms .msgs , "correct messages should be delivered" )
100115
101116 // Returning an error.
102- res , err = md .Publish (ctx , testMessageA , & errorMessage {})
117+ res , err = md .Publish (ctx , api.Message {
118+ Kind : testMessageA ,
119+ Data : & errorMessage {},
120+ })
103121 require .Error (err , "Publish" )
104122 require .Nil (nil , res , "publish message results should be empty" )
105123 require .True (errors .Is (err , errTest ), "returned error should be the correct one" )
@@ -110,7 +128,10 @@ func TestMessageDispatcher(t *testing.T) {
110128 noResult : true ,
111129 }
112130 md .Subscribe (testMessageA , & ms2 )
113- res , err = md .Publish (ctx , testMessageA , & testMessage {foo : 44 })
131+ res , err = md .Publish (ctx , api.Message {
132+ Kind : testMessageA ,
133+ Data : & testMessage {foo : 44 },
134+ })
114135 require .NoError (err , "Publish" )
115136 require .EqualValues (int32 (44 ), res , "correct publish message result" )
116137 require .EqualValues ([]int32 {42 , 43 , 44 }, ms .msgs , "correct messages should be delivered" )
@@ -119,6 +140,9 @@ func TestMessageDispatcher(t *testing.T) {
119140 // Multiple subscribers returning results.
120141 ms2 .noResult = false
121142 require .Panics (func () {
122- _ , _ = md .Publish (ctx , testMessageA , & testMessage {foo : 44 })
143+ _ , _ = md .Publish (ctx , api.Message {
144+ Kind : testMessageA ,
145+ Data : & testMessage {foo : 44 },
146+ })
123147 }, "multiple subscribers returning results should panic" )
124148}
0 commit comments