Skip to content

Commit f949bf3

Browse files
Added tests
1 parent 48eb480 commit f949bf3

File tree

1 file changed

+40
-12
lines changed

1 file changed

+40
-12
lines changed

demux/event_test.go

Lines changed: 40 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,24 +2,25 @@ package demux
22

33
import (
44
"context"
5+
"errors"
56
"github.com/aws/aws-lambda-go/events"
67
"github.com/stretchr/testify/assert"
78
"reflect"
89
"testing"
910
)
1011

11-
var handlers = []any{
12-
func(ctx context.Context, event *events.APIGatewayWebsocketProxyRequest) (
13-
*events.APIGatewayProxyResponse,
14-
error) {
15-
return nil, nil
16-
},
17-
func(ctx context.Context, event *events.APIGatewayProxyRequest) (
18-
*events.APIGatewayProxyResponse,
19-
error) {
20-
return nil, nil
21-
},
22-
}
12+
//var handlers = []any{
13+
// func(ctx context.Context, event *events.APIGatewayWebsocketProxyRequest) (
14+
// *events.APIGatewayProxyResponse,
15+
// error) {
16+
// return nil, nil
17+
// },
18+
// func(ctx context.Context, event *events.APIGatewayProxyRequest) (
19+
// *events.APIGatewayProxyResponse,
20+
// error) {
21+
// return nil, nil
22+
// },
23+
//}
2324

2425
func TestCreateEventWorks(t *testing.T) {
2526
eventFactories := []Factory{
@@ -81,6 +82,33 @@ func TestProcessEventWorks(t *testing.T) {
8182
assert.True(t, factoryCalled)
8283
}
8384

85+
func TestProcessEventWorksReturningError(t *testing.T) {
86+
handlerMap, err := createHandlerMap(
87+
[]any{
88+
func(ctx context.Context, event *events.APIGatewayProxyRequest) (
89+
*events.APIGatewayProxyResponse,
90+
error) {
91+
return &events.APIGatewayProxyResponse{}, errors.New("hello this is an error")
92+
}})
93+
assert.NoError(t, err)
94+
assert.NotNil(t, handlerMap)
95+
96+
cfg := &demuxCfg{
97+
factories: []Factory{
98+
func(ctx *EventContext) any {
99+
return &events.APIGatewayProxyRequest{}
100+
},
101+
},
102+
handlerMap: handlerMap,
103+
}
104+
105+
rawEvent := map[string]any{}
106+
107+
resp, err := processEvent(cfg, context.TODO(), rawEvent)
108+
assert.EqualError(t, err, "hello this is an error")
109+
assert.Nil(t, resp)
110+
}
111+
84112
func TestProcessEventFailsWithUnhandledEventType(t *testing.T) {
85113
handlerMap, err := createHandlerMap(
86114
[]any{})

0 commit comments

Comments
 (0)