when:
  event: [push, pull_request, manual]
  branch: [dev, stage, main]

# Unit tests are architecture-neutral — run once on the colocated arm64 agent
# (suite/_infra/ci/README.md: unit lanes stay arm64-only to avoid burning the
# remote amd64 agent). Build-push fans out to arm64 + amd64 via matrix.
labels:
  platform: arm64

steps:
  - name: unit-tests
    image: mcr.microsoft.com/dotnet/sdk:10.0
    commands:
      - apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends protobuf-compiler && rm -rf /var/lib/apt/lists/*
      - export PROTOBUF_PROTOC=/usr/bin/protoc
      - dotnet restore SatelliteProvider.sln
      - dotnet test SatelliteProvider.Tests/SatelliteProvider.Tests.csproj --no-restore --configuration Release --logger "console;verbosity=normal" --logger "trx;LogFileName=test-results.trx" --results-directory /app/test-results
