From 69e808b687427d6f94eccf4614720cd83630b196 Mon Sep 17 00:00:00 2001 From: jojo Date: Wed, 27 Sep 2023 15:34:07 -0300 Subject: [PATCH 1/2] :bug: chore: remove unused library --- go.mod | 3 +-- go.sum | 9 +++++---- tools.go | 1 - 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/go.mod b/go.mod index 7863230..bbbae29 100644 --- a/go.mod +++ b/go.mod @@ -4,10 +4,10 @@ go 1.21 require ( github.com/go-chi/chi/v5 v5.0.10 + github.com/go-openapi/runtime v0.26.0 github.com/golang-migrate/migrate/v4 v4.16.2 github.com/golangci/golangci-lint v1.54.2 github.com/jmoiron/sqlx v1.3.5 - go.uber.org/mock v0.3.0 golang.org/x/vuln v1.0.1 ) @@ -58,7 +58,6 @@ require ( github.com/go-openapi/jsonpointer v0.19.5 // indirect github.com/go-openapi/jsonreference v0.20.0 // indirect github.com/go-openapi/loads v0.21.2 // indirect - github.com/go-openapi/runtime v0.26.0 // indirect github.com/go-openapi/spec v0.20.8 // indirect github.com/go-openapi/strfmt v0.21.7 // indirect github.com/go-openapi/swag v0.22.3 // indirect diff --git a/go.sum b/go.sum index 6fb6744..aa4cb94 100644 --- a/go.sum +++ b/go.sum @@ -360,6 +360,8 @@ github.com/google/renameio v0.1.0 h1:GOZbcHa3HfsPKPlmyPyN2KEohoMXOhdMbHrvbpl2QaA github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= +github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg= github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk= github.com/googleapis/google-cloud-go-testing v0.0.0-20200911160855-bcd43fbb19e8/go.mod h1:dvDLG8qkwmyD9a/MJJN3XJcT3xFxOKAvTZGvuZmac9g= @@ -511,7 +513,6 @@ github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRW github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nakabonne/nestif v0.3.1 h1:wm28nZjhQY5HyYPx+weN3Q65k6ilSBxDb8v5S81B81U= github.com/nakabonne/nestif v0.3.1/go.mod h1:9EtoZochLn5iUprVDmDjqGKPofoUEBL8U4Ngq6aY7OE= -github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e h1:fD57ERR4JtEqsWbfPhv4DMiApHyliiK5xCTNVSPiaAs= github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= github.com/nishanths/exhaustive v0.11.0 h1:T3I8nUGhl/Cwu5Z2hfc92l0e04D2GEW6e0l8pzda2l0= github.com/nishanths/exhaustive v0.11.0/go.mod h1:RqwDsZ1xY0dNdqHho2z6X+bgzizwbLYOWnZbbl2wLB4= @@ -667,6 +668,7 @@ github.com/tenntenn/text/transform v0.0.0-20200319021203-7eef512accb3 h1:f+jULpR github.com/tenntenn/text/transform v0.0.0-20200319021203-7eef512accb3/go.mod h1:ON8b8w4BN/kE1EOhwT0o+d62W65a6aPw1nouo9LMgyY= github.com/tetafro/godot v1.4.14 h1:ScO641OHpf9UpHPk8fCknSuXNMpi4iFlwuWoBs3L+1s= github.com/tetafro/godot v1.4.14/go.mod h1:2oVxTBSftRTh4+MVfUaUXR6bn2GDXCaMcOG4Dk3rfio= +github.com/tidwall/pretty v1.0.0 h1:HsD+QiTn7sK6flMKIvNmpqz1qrpP3Ps6jOKIKMooyg4= github.com/tidwall/pretty v1.0.0/go.mod h1:XNkn88O1ChpSDQmQeStsy+sBenx6DDtFZJxhVysOjyk= github.com/timakin/bodyclose v0.0.0-20230421092635-574207250966 h1:quvGphlmUVU+nhpFa4gg4yJyTRJ13reZMDHrKwYw53M= github.com/timakin/bodyclose v0.0.0-20230421092635-574207250966/go.mod h1:27bSVNWSBOHm+qRp1T9qzaIpsWEP6TbUnei/43HK+PQ= @@ -724,8 +726,6 @@ go.uber.org/atomic v1.7.0 h1:ADUqmZGgLDDfbSL9ZmPxKTybcoEYHgpYfELNoN+7hsw= go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= go.uber.org/goleak v1.1.11 h1:wy28qYRKZgnJTxGxvye5/wgWr1EKjmUDGYox5mGlRlI= go.uber.org/goleak v1.1.11/go.mod h1:cwTWslyiVhfpKIDGSZEM2HlOvcqm+tG4zioyIeLoqMQ= -go.uber.org/mock v0.3.0 h1:3mUxI1No2/60yUYax92Pt8eNOEecx2D3lcXZh2NEZJo= -go.uber.org/mock v0.3.0/go.mod h1:a6FSlNadKUHUa9IP5Vyt1zh4fC7uAwxMutEAscFbkZc= go.uber.org/multierr v1.6.0 h1:y6IPFStTAIT5Ytl7/XYmHvzXQ7S3g/IeZW9hyZ5thw4= go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU= go.uber.org/zap v1.24.0 h1:FiJd5l1UOLj0wCgbSE0rwwXHzEdAZS6hiiSnxJN/D60= @@ -1125,8 +1125,9 @@ gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLks gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f h1:BLraFXnmrev5lT+xlilqcH8XK9/i0At2xKjWk4p6zsU= gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= +gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= gopkg.in/ini.v1 v1.67.0 h1:Dgnx+6+nfE+IfzjUEISNeydPJh9AXNNsWbGP9KzCsOA= gopkg.in/ini.v1 v1.67.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= diff --git a/tools.go b/tools.go index c505df9..15921d0 100644 --- a/tools.go +++ b/tools.go @@ -5,6 +5,5 @@ package tools import ( _ "github.com/golang-migrate/migrate/v4" _ "github.com/golangci/golangci-lint/cmd/golangci-lint" - _ "go.uber.org/mock/mockgen" _ "golang.org/x/vuln/cmd/govulncheck" ) From 4ae7fa48ceca5ca58d4dc657c174a3aad4557a6d Mon Sep 17 00:00:00 2001 From: jojo Date: Wed, 27 Sep 2023 16:54:30 -0300 Subject: [PATCH 2/2] :bug: chore: error handling --- api/transactionhandler.go | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/api/transactionhandler.go b/api/transactionhandler.go index 4307132..e1ba182 100644 --- a/api/transactionhandler.go +++ b/api/transactionhandler.go @@ -62,14 +62,14 @@ func (s transactionHandler) producerBalance(w http.ResponseWriter, r *http.Reque query := r.URL.Query() name := query.Get("name") if name == "" { - sendErr(w, http.StatusBadRequest, fmt.Errorf("name is required")) + sendErr(w, http.StatusBadRequest, Error{"name_required", "name is required"}) return } b, err := s.storage.Balance(r.Context(), "producer", name) if err != nil { if err == postgres.ErrSellerNotFound { - sendErr(w, http.StatusNotFound, postgres.ErrSellerNotFound) + sendErr(w, http.StatusNotFound, Error{"seller_not_found", "seller not found"}) return } sendErr(w, http.StatusInternalServerError, err) @@ -83,14 +83,14 @@ func (s transactionHandler) affiliateBalance(w http.ResponseWriter, r *http.Requ query := r.URL.Query() name := query.Get("name") if name == "" { - sendErr(w, http.StatusBadRequest, fmt.Errorf("name is required")) + sendErr(w, http.StatusBadRequest, Error{"name_required", "name is required"}) return } b, err := s.storage.Balance(r.Context(), "affiliate", name) if err != nil { if err == postgres.ErrSellerNotFound { - sendErr(w, http.StatusNotFound, postgres.ErrSellerNotFound) + sendErr(w, http.StatusNotFound, Error{"seller_not_found", "seller not found"}) return } sendErr(w, http.StatusInternalServerError, err) @@ -104,14 +104,14 @@ func (s transactionHandler) upload(w http.ResponseWriter, r *http.Request) { content, err := parseFile(r) if err != nil { slog.Error("Failed to parse file", "error", err) - sendErr(w, http.StatusBadRequest, err) + sendErr(w, http.StatusBadRequest, Error{"invalid_file", "invalid file"}) return } transactions, err := convert(content) if err != nil { slog.Error("Failed to convert transactions", "error", err, "content", content) - sendErr(w, http.StatusBadRequest, err) + sendErr(w, http.StatusBadRequest, Error{"invalid_file", "invalid file"}) return } err = s.storage.SaveTransaction(r.Context(), transactions)