Home / Function/ TestErrorLogger() — gin Function Reference

TestErrorLogger() — gin Function Reference

Architecture documentation for the TestErrorLogger() function in logger_test.go from the gin codebase.

Entity Profile

Relationship Graph

Source Code

logger_test.go lines 375–400

func TestErrorLogger(t *testing.T) {
	router := New()
	router.Use(ErrorLogger())
	router.GET("/error", func(c *Context) {
		c.Error(errors.New("this is an error")) //nolint: errcheck
	})
	router.GET("/abort", func(c *Context) {
		c.AbortWithError(http.StatusUnauthorized, errors.New("no authorized")) //nolint: errcheck
	})
	router.GET("/print", func(c *Context) {
		c.Error(errors.New("this is an error")) //nolint: errcheck
		c.String(http.StatusInternalServerError, "hola!")
	})

	w := PerformRequest(router, http.MethodGet, "/error")
	assert.Equal(t, http.StatusOK, w.Code)
	assert.JSONEq(t, "{\"error\":\"this is an error\"}", w.Body.String())

	w = PerformRequest(router, http.MethodGet, "/abort")
	assert.Equal(t, http.StatusUnauthorized, w.Code)
	assert.JSONEq(t, "{\"error\":\"no authorized\"}", w.Body.String())

	w = PerformRequest(router, http.MethodGet, "/print")
	assert.Equal(t, http.StatusInternalServerError, w.Code)
	assert.Equal(t, "hola!{\"error\":\"this is an error\"}", w.Body.String())
}

Domain

Subdomains

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free