package ezhandler_test import ( "net/http" "net/http/httptest" "testing" "codeberg.org/danjones000/ezhandler" "github.com/stretchr/testify/assert" ) func TestHandlerFunc_ServeHTTP(t *testing.T) { tests := []struct { name string handlerFunc ezhandler.HandlerFunc expectedErr error }{ { name: "no error", handlerFunc: ezhandler.HandlerFunc(func(w http.ResponseWriter, r *http.Request) error { w.WriteHeader(http.StatusOK) return nil }), expectedErr: nil, }, { name: "with error", handlerFunc: ezhandler.HandlerFunc(func(w http.ResponseWriter, r *http.Request) error { return errTest }), expectedErr: errTest, }, } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { req := httptest.NewRequest(http.MethodGet, "/", http.NoBody) rec := httptest.NewRecorder() err := tt.handlerFunc.ServeHTTP(rec, req) if tt.expectedErr != nil { assert.Equal(t, tt.expectedErr, err) } else { assert.NoError(t, err) } }) } }