Skip to content

Commit

Permalink
Package HTTPCli :
Browse files Browse the repository at this point in the history
- Fix testing suite name
Other :
- fix linter config
- bump dependencies
  • Loading branch information
nabbar committed Apr 17, 2023
1 parent 4be6357 commit e0e9aad
Show file tree
Hide file tree
Showing 3 changed files with 101 additions and 102 deletions.
171 changes: 86 additions & 85 deletions .golangci.yml
Original file line number Diff line number Diff line change
@@ -1,110 +1,49 @@
linters-settings:
dupl:
threshold: 100
funlen:
lines: 250
statements: 200
gci:
local-prefixes: github.com/golangci/golangci-lint
goconst:
min-len: 2
min-occurrences: 2
gocyclo:
min-complexity: 50
goimports:
local-prefixes: github.com/golangci/golangci-lint
gomnd:
settings:
mnd:
# don't include the "operation" and "assign"
checks: argument,case,condition,return
govet:
check-shadowing: true
settings:
printf:
funcs:
- (github.com/golangci/golangci-lint/pkg/logutils.Log).Infof
- (github.com/golangci/golangci-lint/pkg/logutils.Log).Warnf
- (github.com/golangci/golangci-lint/pkg/logutils.Log).Errorf
- (github.com/golangci/golangci-lint/pkg/logutils.Log).Fatalf
lll:
line-length: 140
maligned:
suggest-new: true
misspell:
locale: US

linters:
# please, do not use `enable-all`: it's deprecated and will be removed soon.
# inverted configuration with `enable-all` and `disable` is not scalable during updates of golangci-lint
disable-all: true
enable:
- bodyclose
- deadcode
- dogsled
- dupl
- errcheck
- exportloopref
- exhaustive
- funlen
- goconst
- gocyclo
- gofmt
- goimports
- gomnd
- goprintffuncname
- gosec
- gosimple
- govet
- ineffassign
- lll
- misspell
- nakedret
- noctx
- rowserrcheck
- staticcheck
- structcheck
- stylecheck
- typecheck
- unconvert
- unparam
- unused
- varcheck
# This file contains all available configuration options
# with their default values.

# options for analysis running
run:
# default concurrency is a available CPU number
#concurrency: 4
concurrency: 4

# timeout for analysis, e.g. 30s, 5m, default is 1m
timeout: 10m
timeout: 30m

# exit code when at least one issue was found, default is 1
issues-exit-code: 1
issues-exit-code: 0

# include test files or not, default is true
tests: false
tests: true

# list of build tags, all linters use it. Default is empty list.
#build-tags:
# - mytag
build-tags: []

# which dirs to skip: issues from them won't be reported;
# can use regexp here: generated.*, regexp is applied on full path;
# default value is empty list, but default dirs are skipped independently
# from this option's value (see skip-dirs-use-default).
# "/" will be replaced by current OS file path separator to properly work
# on Windows.
skip-dirs:
- test/
- vendor/
- release
- scripts
- vendor
- test
- .*

# default is true. Enables skipping of directories:
# vendor$, third_party$, testdata$, examples$, Godeps$, builtin$
#skip-dirs-use-default: true
skip-dirs-use-default: true

# which files to skip: they will be analyzed, but issues from them
# won't be reported. Default value is empty list, but there is
# no need to include all autogenerated files, we confidently recognize
# autogenerated files. If it's not please let us know.
# "/" will be replaced by current OS file path separator to properly work
# on Windows.
#skip-files:
# - ".*\\.my\\.go$"
# - lib/bad.go
skip-files:
- ".*\\.my\\.go$"

# by default isn't set. If set we pass it to "go list -mod={option}". From "go help modules":
# If invoked with -mod=readonly, the go command is disallowed from the implicit
# automatic updating of go.mod described above. Instead, it fails when any changes
Expand All @@ -113,20 +52,82 @@ run:
# If invoked with -mod=vendor, the go command assumes that the vendor
# directory holds the correct copies of dependencies and ignores
# the dependency descriptions in go.mod.
modules-download-mode: vendor
#modules-download-mode: readonly|release|vendor

# Allow multiple parallel golangci-lint instances running.
# If false (default) - golangci-lint acquires file lock on start.
allow-parallel-runners: true


# output configuration options
output:
# colored-line-number|line-number|json|tab|checkstyle|code-climate, default is "colored-line-number"
format: colored-line-number

# print lines of code with issue, default is true
print-issued-lines: true

# print linter name in the end of issue text, default is true
print-linter-name: true

# make issues output unique by line, default is true
uniq-by-line: true

# add a prefix to the output file references; default is no prefix
path-prefix: ""

linters:
fast: false
enable-all: true
disable:
# - bodyclose
# - contextcheck
# - cyclop
- deadcode
# - errname
# - errorlint
- exhaustive
- exhaustivestruct
- exhaustruct
# - forbidigo
# - funlen
# - gci
# - gochecknoglobals
# - gochecknoinits
# - gocognit
# - gocritic
# - gocyclo
# - godot
# - godox
# - goerr113
# - gofumpt
- golint
# - gomnd
- ifshort
# - interfacebloat
- interfacer
# - ireturn
# - lll
- maligned
# - nakedret
# - nestif
# - nilerr
# - nlreturn
# - noctx
# - nolintlint
# - nonamedreturns
- nosnakecase
# - revive
# - rowserrcheck
- scopelint
# - sqlclosecheck
- structcheck
# - stylecheck
# - tagliatelle
# - tparallel
- varcheck
- varnamelen
# - wastedassign
# - whitespace
# - wrapcheck
# - wsl
4 changes: 2 additions & 2 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ require (
github.com/onsi/ginkgo/v2 v2.9.2
github.com/onsi/gomega v1.27.6
github.com/pelletier/go-toml v1.9.5
github.com/prometheus/client_golang v1.14.0
github.com/prometheus/client_golang v1.15.0
github.com/shirou/gopsutil v3.21.11+incompatible
github.com/sirupsen/logrus v1.9.0
github.com/spf13/cobra v1.7.0
Expand Down Expand Up @@ -62,7 +62,7 @@ require (
require (
github.com/Azure/go-ntlmssp v0.0.0-20221128193559-754e69321358 // indirect
github.com/ClickHouse/ch-go v0.54.0 // indirect
github.com/ClickHouse/clickhouse-go/v2 v2.8.3 // indirect
github.com/ClickHouse/clickhouse-go/v2 v2.9.0 // indirect
github.com/Masterminds/goutils v1.1.1 // indirect
github.com/Masterminds/semver v1.5.0 // indirect
github.com/Masterminds/sprig v2.22.0+incompatible // indirect
Expand Down
28 changes: 13 additions & 15 deletions httpcli/httpcli_suite_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -37,39 +37,37 @@ import (
. "github.com/onsi/gomega"
)

var (
ctx context.Context
cnl context.CancelFunc
)

/*
Using https://onsi.github.io/ginkgo/
Running with $> ginkgo -cover .
*/

func TestGolibHttpCliHelper(t *testing.T) {
RegisterFailHandler(Fail)
RunSpecs(t, "Logger Helper Suite")
}

var srv = &http.Server{
Addr: ":8080",
Handler: Hello(),
}

var _ = BeforeSuite(func() {
func TestGolibHttpCliHelper(t *testing.T) {
defer func() {
_ = srv.Shutdown(context.Background())
}()
go func() {
if err := srv.ListenAndServe(); err != nil {
if !errors.Is(err, http.ErrServerClosed) {
panic(err)
if e := srv.ListenAndServe(); e != nil {
if !errors.Is(e, http.ErrServerClosed) {
panic(e)
}
}
}()
time.Sleep(500 * time.Millisecond)

RegisterFailHandler(Fail)
RunSpecs(t, "HTTP Cli Helper Suite")
}

var _ = BeforeSuite(func() {
})

var _ = AfterSuite(func() {
_ = srv.Shutdown(context.Background())
})

func Hello() http.HandlerFunc {
Expand Down

0 comments on commit e0e9aad

Please sign in to comment.