mirror of
https://github.com/hoernschen/dendrite.git
synced 2025-04-01 17:53:39 +00:00
* Update gometalinter config gometalinter now uses `maligned` instead of `aligncheck` (https://github.com/alecthomas/gometalinter/pull/367), so we need to update our config accordingly. * Update gometalinter * Disable gotype linter gotype does not seem to play nicely with the gb vendor directory. In particular, it wants each of our dependencies to be built and installed (see https://github.com/golang/go/issues/10969), but (empirically) it will not accept them being installed in `pkg` but insists on them being in `vendor/pkg`. This presents a problem because `gb build` builds the packages into `pkg` (which doesn't seem entirely unreasonable since `.` comes before `vendor` in `$GOPATH`). `go install github.com/x/y` does install in `vendor/pkg` but requires us to know the name of each package. The general conclusion of https://github.com/alecthomas/gometalinter/issues/91 seems to have been that the easiest thing to do is to disable `gotype` for now. * Fix `unparam` lint * Fix goshadow lint
20 lines
371 B
Go
20 lines
371 B
Go
package regressiontests
|
|
|
|
import "testing"
|
|
|
|
func TestMaligned(t *testing.T) {
|
|
t.Parallel()
|
|
source := `package test
|
|
|
|
type unaligned struct {
|
|
a uint16
|
|
b uint64
|
|
c uint16
|
|
|
|
}
|
|
`
|
|
expected := Issues{
|
|
{Linter: "maligned", Severity: "warning", Path: "test.go", Line: 3, Col: 16, Message: "struct of size 24 could be 16"},
|
|
}
|
|
ExpectIssues(t, "maligned", source, expected)
|
|
}
|