Skip to content

Fix inject delete with submissions #25

Fix inject delete with submissions

Fix inject delete with submissions #25

Workflow file for this run

name: Quotient Test Suite
on:
push:
branches-ignore:
- 'dependabot/**'
pull_request:
branches-ignore:
- 'dependabot/**'
jobs:
unit-tests:
name: Unit Tests
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
submodules: recursive
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: '1.25'
cache: true
- name: Install dependencies
run: go mod download
- name: Run unit tests
run: go test -v -race -short ./engine/... ./www/... ./runner/...
- name: Run unit tests with coverage
run: go test -v -race -short -coverprofile=coverage.out -covermode=atomic ./...
integration-tests:
name: Integration Tests
runs-on: ubuntu-latest
services:
redis:
image: redis:7-alpine
ports:
- 6379:6379
options: >-
--health-cmd "redis-cli ping"
--health-interval 10s
--health-timeout 5s
--health-retries 5
postgres:
image: postgres:16-alpine
env:
POSTGRES_DB: quotient_test
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
ports:
- 5432:5432
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
submodules: recursive
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: '1.25'
cache: true
- name: Install dependencies
run: go mod download
- name: Run integration tests
run: go test -v -race ./tests/integration/... ./engine/... -timeout 10m
env:
REDIS_HOST: localhost
REDIS_PORT: 6379
POSTGRES_HOST: localhost
POSTGRES_PORT: 5432
POSTGRES_DB: quotient_test
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
security-scanner:
name: Security Scanner
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
submodules: recursive
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: '1.25'
cache: true
- name: Install dependencies
run: go mod download
- name: Run gosec security scanner
run: |
go install github.com/securego/gosec/v2/cmd/gosec@latest
# Security exceptions are handled via inline // #nosec comments with justifications
gosec -exclude-generated -exclude-dir=divisor ./...
property-tests:
name: Property-Based Tests
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
submodules: recursive
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: '1.25'
cache: true
- name: Install dependencies
run: go mod download
- name: Run property-based tests (extended)
run: go test -v ./engine/... -run Property -rapid.checks=5000 -timeout 15m