Browse Source

Adds HandlerName()

Manu Mtz-Almeida 10 years ago
parent
commit
95c08d5f84
3 changed files with 15 additions and 1 deletions
  1. 4 0
      context.go
  2. 11 0
      context_test.go
  3. 0 1
      routes_test.go

+ 4 - 0
context.go

@@ -72,6 +72,10 @@ func (c *Context) Copy() *Context {
 	return &cp
 }
 
+func (c *Context) HandlerName() string {
+	return nameOfFunction(c.handlers.Last())
+}
+
 /************************************/
 /*********** FLOW CONTROL ***********/
 /************************************/

+ 11 - 0
context_test.go

@@ -135,6 +135,17 @@ func TestContextCopy(t *testing.T) {
 	assert.Equal(t, cp.Params, c.Params)
 }
 
+func TestContextHandlerName(t *testing.T) {
+	c, _, _ := createTestContext()
+	c.handlers = HandlersChain{func(c *Context) {}, handlerNameTest}
+
+	assert.Equal(t, c.HandlerName(), "github.com/gin-gonic/gin.handlerNameTest")
+}
+
+func handlerNameTest(c *Context) {
+
+}
+
 func TestContextQuery(t *testing.T) {
 	c, _, _ := createTestContext()
 	c.Request, _ = http.NewRequest("GET", "http://example.com/?foo=bar&page=10", nil)

+ 0 - 1
routes_test.go

@@ -40,7 +40,6 @@ func testRouteOK(method string, t *testing.T) {
 
 	performRequest(r, method, "/test2")
 	assert.True(t, passedAny)
-
 }
 
 // TestSingleRouteOK tests that POST route is correctly invoked.