Skip to content

Commit

Permalink
fix: test
Browse files Browse the repository at this point in the history
  • Loading branch information
gleaming9 committed Dec 4, 2024
1 parent fd2fc1c commit 67b17a2
Show file tree
Hide file tree
Showing 9 changed files with 636 additions and 3 deletions.
5 changes: 4 additions & 1 deletion .dockerignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,5 @@
.git
.DS_Store
.DS_Store

# Go 테스트 커버리지 파일
coverage
288 changes: 288 additions & 0 deletions coverage
Original file line number Diff line number Diff line change
@@ -0,0 +1,288 @@
mode: set
go_todo_app/testutil/fixture/user.go:12.40,23.14 2 0
go_todo_app/testutil/fixture/user.go:23.14,25.3 1 0
go_todo_app/testutil/fixture/user.go:26.2,26.15 1 0
go_todo_app/testutil/fixture/user.go:26.15,28.3 1 0
go_todo_app/testutil/fixture/user.go:29.2,29.18 1 0
go_todo_app/testutil/fixture/user.go:29.18,31.3 1 0
go_todo_app/testutil/fixture/user.go:32.2,32.22 1 0
go_todo_app/testutil/fixture/user.go:32.22,34.3 1 0
go_todo_app/testutil/fixture/user.go:35.2,35.18 1 0
go_todo_app/testutil/fixture/user.go:35.18,37.3 1 0
go_todo_app/testutil/fixture/user.go:38.2,38.25 1 0
go_todo_app/testutil/fixture/user.go:38.25,40.3 1 0
go_todo_app/testutil/fixture/user.go:41.2,41.26 1 0
go_todo_app/testutil/fixture/user.go:41.26,43.3 1 0
go_todo_app/testutil/fixture/user.go:45.2,45.15 1 0
go_todo_app/entity/user.go:19.49,21.2 1 0
go_todo_app/clock/clock.go:11.38,13.2 1 0
go_todo_app/clock/clock.go:17.40,19.2 1 0
go_todo_app/testutil/db.go:11.43,13.47 2 0
go_todo_app/testutil/db.go:13.47,15.3 1 0
go_todo_app/testutil/db.go:16.2,20.16 2 0
go_todo_app/testutil/db.go:20.16,22.3 1 0
go_todo_app/testutil/db.go:23.2,24.10 1 0
go_todo_app/testutil/db.go:24.10,24.28 1 0
go_todo_app/testutil/db.go:26.2,26.32 1 0
go_todo_app/testutil/handler.go:14.49,17.50 3 0
go_todo_app/testutil/handler.go:17.50,19.3 1 0
go_todo_app/testutil/handler.go:20.2,20.49 1 0
go_todo_app/testutil/handler.go:20.49,22.3 1 0
go_todo_app/testutil/handler.go:23.2,23.42 1 0
go_todo_app/testutil/handler.go:23.42,25.3 1 0
go_todo_app/testutil/handler.go:30.80,34.19 2 0
go_todo_app/testutil/handler.go:34.19,34.43 1 0
go_todo_app/testutil/handler.go:37.2,38.16 2 0
go_todo_app/testutil/handler.go:38.16,40.3 1 0
go_todo_app/testutil/handler.go:42.2,42.30 1 0
go_todo_app/testutil/handler.go:42.30,44.3 1 0
go_todo_app/testutil/handler.go:47.2,47.36 1 0
go_todo_app/testutil/handler.go:47.36,50.3 1 0
go_todo_app/testutil/handler.go:52.2,52.25 1 0
go_todo_app/testutil/handler.go:55.49,58.16 3 0
go_todo_app/testutil/handler.go:58.16,60.3 1 0
go_todo_app/testutil/handler.go:61.2,61.11 1 0
go_todo_app/testutil/kvs.go:16.51,21.47 4 0
go_todo_app/testutil/kvs.go:21.47,23.3 1 0
go_todo_app/testutil/kvs.go:24.2,29.64 2 0
go_todo_app/testutil/kvs.go:29.64,31.3 1 0
go_todo_app/testutil/kvs.go:32.2,32.15 1 0
go_todo_app/config/config.go:20.29,22.39 2 1
go_todo_app/config/config.go:22.39,24.3 1 0
go_todo_app/config/config.go:25.2,25.17 1 1
go_todo_app/clock/clock.go:11.38,13.2 1 0
go_todo_app/clock/clock.go:17.40,19.2 1 0
go_todo_app/entity/user.go:19.49,21.2 1 0
go_todo_app/service/add_task.go:17.84,25.16 3 0
go_todo_app/service/add_task.go:25.16,27.3 1 0
go_todo_app/service/add_task.go:29.2,29.15 1 0
go_todo_app/service/list_task.go:15.73,17.16 2 0
go_todo_app/service/list_task.go:17.16,19.3 1 0
go_todo_app/service/list_task.go:20.2,20.16 1 0
go_todo_app/service/login.go:15.77,17.16 2 0
go_todo_app/service/login.go:17.16,19.3 1 0
go_todo_app/service/login.go:21.2,21.46 1 0
go_todo_app/service/login.go:21.46,23.3 1 0
go_todo_app/service/login.go:25.2,26.16 2 0
go_todo_app/service/login.go:26.16,28.3 1 0
go_todo_app/service/login.go:30.2,30.25 1 0
go_todo_app/service/register_user.go:19.25,22.16 2 0
go_todo_app/service/register_user.go:22.16,24.3 1 0
go_todo_app/service/register_user.go:26.2,32.58 2 0
go_todo_app/service/register_user.go:32.58,34.3 1 0
go_todo_app/service/register_user.go:36.2,36.15 1 0
go_todo_app/clock/clock.go:11.38,13.2 1 0
go_todo_app/clock/clock.go:17.40,19.2 1 0
go_todo_app/entity/user.go:19.49,21.2 1 0
go_todo_app/handler/add_task.go:15.70,23.59 3 1
go_todo_app/handler/add_task.go:23.59,29.3 2 0
go_todo_app/handler/add_task.go:32.2,32.47 1 1
go_todo_app/handler/add_task.go:32.47,38.3 2 1
go_todo_app/handler/add_task.go:39.2,40.16 2 1
go_todo_app/handler/add_task.go:40.16,45.3 2 0
go_todo_app/handler/add_task.go:47.2,50.41 2 1
go_todo_app/handler/list_task.go:20.71,25.16 3 1
go_todo_app/handler/list_task.go:25.16,30.3 2 0
go_todo_app/handler/list_task.go:32.2,35.26 2 1
go_todo_app/handler/list_task.go:35.26,41.3 1 1
go_todo_app/handler/list_task.go:44.2,44.41 1 1
go_todo_app/handler/login.go:16.67,23.62 3 1
go_todo_app/handler/login.go:23.62,28.3 2 0
go_todo_app/handler/login.go:30.2,31.16 2 1
go_todo_app/handler/login.go:31.16,36.3 2 1
go_todo_app/handler/login.go:38.2,39.16 2 1
go_todo_app/handler/login.go:39.16,44.3 2 1
go_todo_app/handler/login.go:45.2,51.41 2 1
go_todo_app/handler/middleware.go:9.54,10.71 1 0
go_todo_app/handler/middleware.go:10.71,12.33 2 0
go_todo_app/handler/middleware.go:12.33,17.4 2 0
go_todo_app/handler/middleware.go:18.3,18.23 1 0
go_todo_app/handler/middleware.go:22.73,23.46 1 0
go_todo_app/handler/middleware.go:23.46,24.72 1 0
go_todo_app/handler/middleware.go:24.72,26.18 2 0
go_todo_app/handler/middleware.go:26.18,32.5 2 0
go_todo_app/handler/middleware.go:33.4,33.26 1 0
go_todo_app/handler/register_user.go:16.75,25.59 3 0
go_todo_app/handler/register_user.go:25.59,30.3 2 0
go_todo_app/handler/register_user.go:32.2,32.47 1 0
go_todo_app/handler/register_user.go:32.47,37.3 2 0
go_todo_app/handler/register_user.go:39.2,40.16 2 0
go_todo_app/handler/register_user.go:40.16,46.3 2 0
go_todo_app/handler/register_user.go:48.2,51.41 2 0
go_todo_app/handler/response.go:17.84,21.16 3 1
go_todo_app/handler/response.go:21.16,31.56 4 0
go_todo_app/handler/response.go:31.56,34.4 1 0
go_todo_app/handler/response.go:35.3,35.9 1 0
go_todo_app/handler/response.go:38.2,39.59 2 1
go_todo_app/handler/response.go:39.59,41.3 1 0
go_todo_app/testutil/db.go:11.43,13.47 2 0
go_todo_app/testutil/db.go:13.47,15.3 1 0
go_todo_app/testutil/db.go:16.2,20.16 2 0
go_todo_app/testutil/db.go:20.16,22.3 1 0
go_todo_app/testutil/db.go:23.2,24.10 1 0
go_todo_app/testutil/db.go:24.10,24.28 1 0
go_todo_app/testutil/db.go:26.2,26.32 1 0
go_todo_app/testutil/handler.go:14.49,17.50 3 1
go_todo_app/testutil/handler.go:17.50,19.3 1 0
go_todo_app/testutil/handler.go:20.2,20.49 1 1
go_todo_app/testutil/handler.go:20.49,22.3 1 0
go_todo_app/testutil/handler.go:23.2,23.42 1 1
go_todo_app/testutil/handler.go:23.42,25.3 1 0
go_todo_app/testutil/handler.go:30.80,34.19 2 1
go_todo_app/testutil/handler.go:34.19,34.43 1 1
go_todo_app/testutil/handler.go:37.2,38.16 2 1
go_todo_app/testutil/handler.go:38.16,40.3 1 0
go_todo_app/testutil/handler.go:42.2,42.30 1 1
go_todo_app/testutil/handler.go:42.30,44.3 1 0
go_todo_app/testutil/handler.go:47.2,47.36 1 1
go_todo_app/testutil/handler.go:47.36,50.3 1 0
go_todo_app/testutil/handler.go:52.2,52.25 1 1
go_todo_app/testutil/handler.go:55.49,58.16 3 1
go_todo_app/testutil/handler.go:58.16,60.3 1 0
go_todo_app/testutil/handler.go:61.2,61.11 1 1
go_todo_app/testutil/kvs.go:16.51,21.47 4 0
go_todo_app/testutil/kvs.go:21.47,23.3 1 0
go_todo_app/testutil/kvs.go:24.2,29.64 2 0
go_todo_app/testutil/kvs.go:29.64,31.3 1 0
go_todo_app/testutil/kvs.go:32.2,32.15 1 0
go_todo_app/main.go:12.37,14.16 2 0
go_todo_app/main.go:14.16,16.3 1 0
go_todo_app/main.go:18.2,19.16 2 0
go_todo_app/main.go:19.16,21.3 1 0
go_todo_app/main.go:22.2,28.16 5 0
go_todo_app/main.go:28.16,30.3 1 0
go_todo_app/main.go:31.2,32.19 2 0
go_todo_app/main.go:35.13,36.50 1 0
go_todo_app/main.go:36.50,39.3 2 0
go_todo_app/mux.go:18.84,22.73 2 0
go_todo_app/mux.go:22.73,25.3 2 0
go_todo_app/mux.go:27.2,29.16 3 0
go_todo_app/mux.go:29.16,31.3 1 0
go_todo_app/mux.go:32.2,35.16 4 0
go_todo_app/mux.go:35.16,37.3 1 0
go_todo_app/mux.go:38.2,39.16 2 0
go_todo_app/mux.go:39.16,41.3 1 0
go_todo_app/mux.go:42.2,72.26 9 0
go_todo_app/server.go:19.58,26.2 1 1
go_todo_app/server.go:29.49,33.21 4 1
go_todo_app/server.go:33.21,35.32 1 1
go_todo_app/server.go:35.32,38.4 2 0
go_todo_app/server.go:39.3,39.13 1 1
go_todo_app/server.go:42.2,43.61 2 1
go_todo_app/server.go:43.61,45.3 1 0
go_todo_app/server.go:47.2,47.18 1 1
go_todo_app/clock/clock.go:11.38,13.2 1 0
go_todo_app/clock/clock.go:17.40,19.2 1 0
go_todo_app/entity/user.go:19.49,21.2 1 0
go_todo_app/clock/clock.go:11.38,13.2 1 0
go_todo_app/clock/clock.go:17.40,19.2 1 1
go_todo_app/entity/user.go:19.49,21.2 1 0
go_todo_app/store/kvs.go:19.68,27.44 2 0
go_todo_app/store/kvs.go:27.44,29.3 1 0
go_todo_app/store/kvs.go:30.2,30.28 1 0
go_todo_app/store/kvs.go:34.81,38.2 2 1
go_todo_app/store/kvs.go:41.76,43.16 2 1
go_todo_app/store/kvs.go:43.16,45.3 1 1
go_todo_app/store/kvs.go:46.2,46.31 1 1
go_todo_app/store/repository.go:25.77,34.16 2 0
go_todo_app/store/repository.go:34.16,35.22 1 0
go_todo_app/store/repository.go:35.23,35.24 0 0
go_todo_app/store/repository.go:39.2,41.44 3 0
go_todo_app/store/repository.go:41.44,42.22 1 0
go_todo_app/store/repository.go:42.22,42.40 1 0
go_todo_app/store/repository.go:44.2,45.21 2 0
go_todo_app/store/repository.go:45.21,45.39 1 0
go_todo_app/store/store.go:18.65,23.2 4 0
go_todo_app/store/store.go:25.66,26.32 1 0
go_todo_app/store/store.go:26.32,28.3 1 0
go_todo_app/store/store.go:29.2,29.25 1 0
go_todo_app/store/store.go:32.41,34.29 2 0
go_todo_app/store/store.go:34.29,36.3 1 0
go_todo_app/store/store.go:37.2,37.14 1 0
go_todo_app/store/task.go:12.25,18.59 3 1
go_todo_app/store/task.go:18.59,20.3 1 0
go_todo_app/store/task.go:21.2,21.19 1 1
go_todo_app/store/task.go:27.9,38.16 5 1
go_todo_app/store/task.go:38.16,40.3 1 0
go_todo_app/store/task.go:42.2,43.16 2 1
go_todo_app/store/task.go:43.16,45.3 1 0
go_todo_app/store/task.go:46.2,47.12 2 1
go_todo_app/store/user.go:12.89,24.16 5 0
go_todo_app/store/user.go:24.16,26.81 2 0
go_todo_app/store/user.go:26.81,29.4 1 0
go_todo_app/store/user.go:31.3,31.13 1 0
go_todo_app/store/user.go:35.2,36.16 2 0
go_todo_app/store/user.go:36.16,38.3 1 0
go_todo_app/store/user.go:39.2,42.12 2 0
go_todo_app/store/user.go:45.98,50.57 3 0
go_todo_app/store/user.go:50.57,52.3 1 0
go_todo_app/store/user.go:53.2,53.15 1 0
go_todo_app/testutil/db.go:11.43,13.47 2 1
go_todo_app/testutil/db.go:13.47,15.3 1 0
go_todo_app/testutil/db.go:16.2,20.16 2 1
go_todo_app/testutil/db.go:20.16,22.3 1 0
go_todo_app/testutil/db.go:23.2,24.10 1 1
go_todo_app/testutil/db.go:24.10,24.28 1 1
go_todo_app/testutil/db.go:26.2,26.32 1 1
go_todo_app/testutil/handler.go:14.49,17.50 3 0
go_todo_app/testutil/handler.go:17.50,19.3 1 0
go_todo_app/testutil/handler.go:20.2,20.49 1 0
go_todo_app/testutil/handler.go:20.49,22.3 1 0
go_todo_app/testutil/handler.go:23.2,23.42 1 0
go_todo_app/testutil/handler.go:23.42,25.3 1 0
go_todo_app/testutil/handler.go:30.80,34.19 2 0
go_todo_app/testutil/handler.go:34.19,34.43 1 0
go_todo_app/testutil/handler.go:37.2,38.16 2 0
go_todo_app/testutil/handler.go:38.16,40.3 1 0
go_todo_app/testutil/handler.go:42.2,42.30 1 0
go_todo_app/testutil/handler.go:42.30,44.3 1 0
go_todo_app/testutil/handler.go:47.2,47.36 1 0
go_todo_app/testutil/handler.go:47.36,50.3 1 0
go_todo_app/testutil/handler.go:52.2,52.25 1 0
go_todo_app/testutil/handler.go:55.49,58.16 3 0
go_todo_app/testutil/handler.go:58.16,60.3 1 0
go_todo_app/testutil/handler.go:61.2,61.11 1 0
go_todo_app/testutil/kvs.go:16.51,21.47 4 1
go_todo_app/testutil/kvs.go:21.47,23.3 1 0
go_todo_app/testutil/kvs.go:24.2,29.64 2 1
go_todo_app/testutil/kvs.go:29.64,31.3 1 0
go_todo_app/testutil/kvs.go:32.2,32.15 1 1
go_todo_app/auth/jwt.go:41.44,43.16 2 1
go_todo_app/auth/jwt.go:43.16,45.3 1 0
go_todo_app/auth/jwt.go:46.2,46.17 1 1
go_todo_app/auth/jwt.go:49.57,52.16 3 1
go_todo_app/auth/jwt.go:52.16,54.3 1 0
go_todo_app/auth/jwt.go:55.2,56.16 2 1
go_todo_app/auth/jwt.go:56.16,58.3 1 0
go_todo_app/auth/jwt.go:59.2,62.15 4 1
go_todo_app/auth/jwt.go:70.83,80.16 2 0
go_todo_app/auth/jwt.go:80.16,82.3 1 0
go_todo_app/auth/jwt.go:83.2,83.61 1 0
go_todo_app/auth/jwt.go:83.61,85.3 1 0
go_todo_app/auth/jwt.go:87.2,88.16 2 0
go_todo_app/auth/jwt.go:88.16,90.3 1 0
go_todo_app/auth/jwt.go:91.2,91.20 1 0
go_todo_app/auth/jwt.go:94.83,100.16 2 1
go_todo_app/auth/jwt.go:100.16,102.3 1 0
go_todo_app/auth/jwt.go:104.2,104.70 1 1
go_todo_app/auth/jwt.go:104.70,106.3 1 1
go_todo_app/auth/jwt.go:108.2,108.60 1 1
go_todo_app/auth/jwt.go:108.60,110.3 1 1
go_todo_app/auth/jwt.go:111.2,111.19 1 1
go_todo_app/auth/jwt.go:119.72,121.2 1 0
go_todo_app/auth/jwt.go:123.59,126.2 2 0
go_todo_app/auth/jwt.go:128.66,130.9 2 0
go_todo_app/auth/jwt.go:130.9,132.3 1 0
go_todo_app/auth/jwt.go:133.2,133.47 1 0
go_todo_app/auth/jwt.go:136.50,139.2 2 0
go_todo_app/auth/jwt.go:143.69,145.16 2 0
go_todo_app/auth/jwt.go:145.16,147.3 1 0
go_todo_app/auth/jwt.go:148.2,149.16 2 0
go_todo_app/auth/jwt.go:149.16,151.3 1 0
go_todo_app/auth/jwt.go:152.2,155.19 4 0
go_todo_app/auth/jwt.go:158.40,160.9 2 0
go_todo_app/auth/jwt.go:160.9,162.3 1 0
go_todo_app/auth/jwt.go:163.2,163.24 1 0
go_todo_app/clock/clock.go:11.38,13.2 1 0
go_todo_app/clock/clock.go:17.40,19.2 1 1
go_todo_app/entity/user.go:19.49,21.2 1 0
1 change: 1 addition & 0 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ require (
github.com/lestrrat-go/jwx/v2 v2.1.3
github.com/matryer/moq v0.5.0
golang.org/x/crypto v0.29.0
golang.org/x/net v0.31.0
golang.org/x/sync v0.9.0
)

Expand Down
2 changes: 0 additions & 2 deletions handler/login.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ package handler
import (
"encoding/json"
"github.com/go-playground/validator"
"log"
"net/http"
)

Expand All @@ -15,7 +14,6 @@ type Login struct {
// 입출력 JSON 을 구성하는 역할만 수행

func (l *Login) ServeHTTP(w http.ResponseWriter, r *http.Request) {
log.Println("Login ServeHTTP\n")
ctx := r.Context()
var body struct {
UserName string `json:"user_name" validate:"required"`
Expand Down
1 change: 1 addition & 0 deletions handler/login_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ package handler

import (
"bytes"
"context"
"errors"
"github.com/go-playground/validator"
"go_todo_app/testutil"
Expand Down
36 changes: 36 additions & 0 deletions handler/middleware.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
package handler

import (
"go_todo_app/auth"
"log"
"net/http"
)

func AdminMiddleware(next http.Handler) http.Handler {
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
log.Print("AdminMiddleware")
if !auth.IsAdmin(r.Context()) {
RespondJSON(r.Context(), w, ErrResponse{
Message: "not admin",
}, http.StatusUnauthorized)
return
}
next.ServeHTTP(w, r)
})
}

func AuthMiddleware(j *auth.JWTer) func(next http.Handler) http.Handler {
return func(next http.Handler) http.Handler {
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
req, err := j.FillContext(r)
if err != nil {
RespondJSON(r.Context(), w, ErrResponse{
Message: "not find auth info",
Details: []string{err.Error()},
}, http.StatusUnauthorized)
return
}
next.ServeHTTP(w, req)
})
}
}
Loading

0 comments on commit 67b17a2

Please sign in to comment.