name: Dart CI

on:
  # Run CI on pushes to the main branch, and on PRs against main.
  push:
    branches: [master]
  pull_request:
    branches: [master]
  schedule:
    - cron: '0 0 * * 0'

env:
  PUB_ENVIRONMENT: bot.github
  _PUB_TEST_SNAPSHOT: ${{ github.workspace }}/.dart_tool/pub.dart.snapshot.dart2
  _TESTS_FILE: .dart_tool/test_files

jobs:
  # Check code formatting and static analysis on a single OS (linux)
  # against Dart stable and dev.
  analyze:
    runs-on: ubuntu-latest
    strategy:
      fail-fast: false
      matrix:
        sdk: [dev]
    steps:
      - uses: actions/checkout@v2
      - uses: dart-lang/setup-dart@v0.1
        with:
          channel: ${{ matrix.sdk }}
      - id: install
        name: Install dependencies
        run: dart pub get
      - name: Check formatting
        run: dart format --output=none --set-exit-if-changed .
        if: always() && steps.install.outcome == 'success'
      - name: Analyze code
        run: dart analyze
        if: always() && steps.install.outcome == 'success'

  # Run tests on a matrix consisting of three dimensions:
  # 1. OS: mac, windows, linux
  # 2. release channel: dev
  # 3. shard: 0, 1, 2, 3, 4, 5, 6
  test:
    needs: analyze
    runs-on: ${{ matrix.os }}
    strategy:
      fail-fast: false
      matrix:
        os: [ubuntu-latest, macos-latest, windows-latest]
        sdk: [dev]
        shard: [0, 1, 2, 3, 4, 5, 6]
    steps:
      - uses: actions/checkout@v2
      - uses: dart-lang/setup-dart@v0.1
        with:
          channel: ${{ matrix.sdk }}
      - name: Install dependencies
        run: dart pub get
      - name: Build snapshot
        run: dart --snapshot=${{ env._PUB_TEST_SNAPSHOT }} bin/pub.dart
      - name: Select tests
        run: |
          find test -name "*_test\\.dart" | sort > $_TESTS_FILE
          (( tests_per_shard = ($(wc -l <$_TESTS_FILE) + 7 - 1) / 7 ))
          (( offset = 1 + tests_per_shard * ${{ matrix.shard }} ))
          tail -n+$offset $_TESTS_FILE | head -n$tests_per_shard > $_TESTS_FILE.${{ matrix.shard }}
          echo 'TEST FILES SELECTED:'
          cat "$_TESTS_FILE.${{ matrix.shard }}"
        shell: bash
      - name: Run tests
        run: dart test --use-data-isolate-strategy --preset travis $(cat $_TESTS_FILE.${{ matrix.shard }})
        shell: bash
