Skip to content

Commit 308ab66

Browse files
authored
Merge pull request #487 from ReneWerner87/fix_group_routing
fix the unnecessary pass through for routes with groups
2 parents 20b2c82 + f1710ea commit 308ab66

File tree

2 files changed

+20
-1
lines changed

2 files changed

+20
-1
lines changed

app_test.go

+19
Original file line numberDiff line numberDiff line change
@@ -525,6 +525,25 @@ func Test_App_Group(t *testing.T) {
525525
//utils.AssertEqual(t, "/test/v1/users", resp.Header.Get("Location"), "Location")
526526
}
527527

528+
func Test_App_Deep_Group(t *testing.T) {
529+
runThroughCount := 0
530+
var dummyHandler = func(c *Ctx) {
531+
runThroughCount++
532+
c.Next()
533+
}
534+
535+
app := New()
536+
gApi := app.Group("/api", dummyHandler)
537+
gV1 := gApi.Group("/v1", dummyHandler)
538+
gUser := gV1.Group("/user", dummyHandler)
539+
gUser.Get("/authenticate", func(ctx *Ctx) {
540+
runThroughCount++
541+
ctx.SendStatus(200)
542+
})
543+
testStatus200(t, app, "/api/v1/user/authenticate", "GET")
544+
utils.AssertEqual(t, 4, runThroughCount, "Loop count")
545+
}
546+
528547
func Test_App_Listen(t *testing.T) {
529548
app := New(&Settings{
530549
DisableStartupMessage: true,

group.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -108,5 +108,5 @@ func (grp *Group) Group(prefix string, handlers ...Handler) *Group {
108108
if len(handlers) > 0 {
109109
grp.app.register("USE", prefix, handlers...)
110110
}
111-
return grp.app.Group(prefix, handlers...)
111+
return grp.app.Group(prefix)
112112
}

0 commit comments

Comments
 (0)