diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 68fc1ae..1f7c265 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -10,47 +10,31 @@ on: - "*" jobs: lint: - name: "Lint" + name: "Lint Go" runs-on: "ubuntu-latest" steps: - - uses: "actions/setup-go@v2" - with: - go-version: "^1.16" - - name: "Install linting tools" - # This is done before checking out, as to not modify go.mod - run: "go install mvdan.cc/gofumpt/gofumports@v0.1.1" - - uses: "actions/checkout@v2" - - uses: "bewuethr/yamllint-action@v1.1.1" - with: - config-file: ".yamllint" - - name: "Go Mod Tidy" - run: "go mod tidy && bash -c '[ $(git status --porcelain | tee /dev/fd/2 | wc -c) -eq 0 ]'" - - name: "Formatting (gofumpt)" - run: | - GOFUMPT_OUTPUT="$(find . -iname '*.go' -type f | grep -v pb.go | grep -v 'pb.*.go' | xargs gofumports -d)" - if [ -n "$GOFUMPT_OUTPUT" ]; then - echo "All the following files are not correctly formatted" - echo "${GOFUMPT_OUTPUT}" - exit 1 - fi - - uses: "golangci/golangci-lint-action@v2" + - uses: "actions/checkout@v3" + - uses: "actions/setup-go@v3" with: - version: "v1.43" - skip-go-installation: true - skip-pkg-cache: true - skip-build-cache: false + go-version: "~1.18" + - uses: "authzed/actions/gofumpt@main" + - uses: "authzed/actions/go-mod-tidy@main" + - uses: "authzed/actions/go-generate@main" + - uses: "authzed/actions/golangci-lint@main" test: name: "Test" runs-on: "ubuntu-latest" steps: - - uses: "actions/checkout@v2" - - uses: "actions/setup-go@v2" + - uses: "actions/checkout@v3" + - uses: "actions/setup-go@v3" with: - go-version: "^1.16" - - uses: "authzed/action-testserver@v3" - - name: "go test" - run: "go test -tags integration ./..." + go-version: "~1.18" + - uses: "authzed/action-spicedb@v1" + - uses: "authzed/actions/go-test@main" + with: + tags: "integration" + race: "false" protobuf: name: "Generate Protobufs" diff --git a/proto/authzed/api/validation_test/tuples_test.go b/proto/authzed/api/validation_test/tuples_test.go index fc0b418..0b91c87 100644 --- a/proto/authzed/api/validation_test/tuples_test.go +++ b/proto/authzed/api/validation_test/tuples_test.go @@ -154,6 +154,8 @@ func TestV0CoreObjectValidity(t *testing.T) { for _, relation := range relations { testName := fmt.Sprintf("%s:%s#%s@%s", ns.name, objectID.name, relation.name, subjectID.name) t.Run(testName, func(t *testing.T) { + t.Parallel() + require := require.New(t) v0ObjectValid := ns.valid && objectID.valid && (relation.validity == alwaysValid || @@ -267,6 +269,8 @@ func TestV1CoreObjectValidity(t *testing.T) { for _, relation := range relations { testName := fmt.Sprintf("%s:%s#%s@%s", ns.name, objectID.name, relation.name, subjectID.name) t.Run(testName, func(t *testing.T) { + t.Parallel() + require := require.New(t) objRef := &v1.ObjectReference{ diff --git a/v0/flatten_test.go b/v0/flatten_test.go index 1014475..eadfc7a 100644 --- a/v0/flatten_test.go +++ b/v0/flatten_test.go @@ -113,6 +113,8 @@ func TestFlatten(t *testing.T) { for _, tc := range testCases { t.Run(tc.name, func(t *testing.T) { + t.Parallel() + var flattened userSet = make(map[string]struct{}) flattened.add(flatten(tc.tree)...)