chore: Enable additional gocritic options (#13711)

This commit is contained in:
Joshua Powers 2023-08-03 09:07:48 -06:00 committed by GitHub
parent 564f24a0a4
commit f39a21121d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 32 additions and 65 deletions

View File

@ -66,6 +66,22 @@ commands:
key: windows-go-<< parameters.cache_version >>-{{ checksum "go.sum" }} key: windows-go-<< parameters.cache_version >>-{{ checksum "go.sum" }}
- run: 'sh ./scripts/installgo_windows.sh' - run: 'sh ./scripts/installgo_windows.sh'
- run: choco install mingw - run: choco install mingw
- run: go install github.com/golangci/golangci-lint/cmd/golangci-lint@v1.53.2
- when:
condition:
equal: [ linux, << parameters.os >> ]
steps:
- run: GOGC=20 /go/bin/golangci-lint run --verbose
- when:
condition:
equal: [ darwin, << parameters.os >> ]
steps:
- run: $HOME/go/bin/golangci-lint run --verbose
- when:
condition:
equal: [ windows, << parameters.os >> ]
steps:
- run: $HOME/go/bin/golangci-lint.exe run --verbose
- run: ./scripts/install_gotestsum.sh << parameters.os >> << parameters.gotestsum >> - run: ./scripts/install_gotestsum.sh << parameters.os >> << parameters.gotestsum >>
- unless: - unless:
condition: condition:

View File

@ -1,48 +0,0 @@
name: golangci-lint
on:
push:
branches:
- master
pull_request:
branches:
- master
schedule:
# Trigger every day at 16:00 UTC
- cron: '0 16 * * *'
permissions:
contents: read # to fetch code (actions/checkout)
pull-requests: read # to fetch pull requests (golangci/golangci-lint-action)
jobs:
golangci:
name: lint-codebase
strategy:
fail-fast: false
max-parallel: 3
matrix:
os: [ ubuntu-latest, macos-latest, windows-latest ]
runs-on: ${{ matrix.os }}
timeout-minutes: 360 #default
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Setup Go
uses: actions/setup-go@v4
with:
go-version: '1.20'
- name: golangci-lint standard
if: runner.os != 'Windows'
uses: golangci/golangci-lint-action@v3
timeout-minutes: 60
with:
version: v1.53.2
args: --timeout 60m0s --verbose --out-${NO_FUTURE}format tab
- name: golangci-lint windows
if: runner.os == 'Windows'
uses: golangci/golangci-lint-action@v3
timeout-minutes: 60
env:
nofuture: out-format
with:
version: v1.53.2
args: --timeout 60m0s --verbose --%nofuture% tab

View File

@ -98,10 +98,13 @@ linters-settings:
- nilValReturn - nilValReturn
- offBy1 - offBy1
- regexpPattern - regexpPattern
- sloppyTestFuncName
- sloppyTypeAssert - sloppyTypeAssert
- sortSlice - sortSlice
- sprintfQuotedString - sprintfQuotedString
- sqlQuery - sqlQuery
- syncMapLoadAndDelete
- truncateCmp
- uncheckedInlineErr - uncheckedInlineErr
- unnecessaryDefer - unnecessaryDefer
- weakCond - weakCond

View File

@ -54,7 +54,7 @@ func TestEventLogIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
prepareLogger(t) testPrepareLogger(t)
config := LogConfig{ config := LogConfig{
LogTarget: LogTargetEventlog, LogTarget: LogTargetEventlog,
@ -79,7 +79,7 @@ func TestRestrictedEventLogIntegration(t *testing.T) {
if testing.Short() { if testing.Short() {
t.Skip("Skipping integration test in short mode") t.Skip("Skipping integration test in short mode")
} }
prepareLogger(t) testPrepareLogger(t)
config := LogConfig{ config := LogConfig{
LogTarget: LogTargetEventlog, LogTarget: LogTargetEventlog,
@ -99,9 +99,9 @@ func TestRestrictedEventLogIntegration(t *testing.T) {
require.Contains(t, events, Event{Message: "Error message", Level: Error}) require.Contains(t, events, Event{Message: "Error message", Level: Error})
} }
func prepareLogger(t *testing.T) { func testPrepareLogger(tb testing.TB) {
eventLog, err := eventlog.Open("telegraf") eventLog, err := eventlog.Open("telegraf")
require.NoError(t, err) require.NoError(tb, err)
require.NotNil(t, eventLog) require.NotNil(tb, eventLog)
registerLogger(LogTargetEventlog, &eventLoggerCreator{logger: eventLog}) registerLogger(LogTargetEventlog, &eventLoggerCreator{logger: eventLog})
} }

View File

@ -25,28 +25,24 @@ func TestSocketListener_tcp(t *testing.T) {
require.NoError(t, err) require.NoError(t, err)
defer sl.Stop() defer sl.Stop()
testStats(t) // Check for stats of specific service
testMissingService(t)
}
func testStats(t *testing.T) {
c := riemanngo.NewTCPClient("127.0.0.1:5555", 5*time.Second) c := riemanngo.NewTCPClient("127.0.0.1:5555", 5*time.Second)
err := c.Connect() require.NoError(t, c.Connect())
require.NoError(t, err) require.NoError(t, err)
defer c.Close() defer c.Close()
result, err := riemanngo.SendEvent(c, &riemanngo.Event{ result, err := riemanngo.SendEvent(c, &riemanngo.Event{
Service: "hello", Service: "hello",
}) })
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, result.GetOk(), true) require.Equal(t, result.GetOk(), true)
}
func testMissingService(t *testing.T) { // Check for stats no service specified
c := riemanngo.NewTCPClient("127.0.0.1:5555", 5*time.Second) c = riemanngo.NewTCPClient("127.0.0.1:5555", 5*time.Second)
err := c.Connect() require.NoError(t, c.Connect())
require.NoError(t, err)
defer c.Close() defer c.Close()
result, err := riemanngo.SendEvent(c, &riemanngo.Event{})
result, err = riemanngo.SendEvent(c, &riemanngo.Event{})
require.Equal(t, false, result.GetOk()) require.Equal(t, false, result.GetOk())
require.Equal(t, "No Service Name", result.GetError()) require.Equal(t, "No Service Name", result.GetError())
require.NoError(t, err) require.NoError(t, err)