muse2 2.1.0

A tool for running simulations of energy systems
Documentation
name: Cargo Test

on:
  push:
    branches: [main]
  pull_request:
  workflow_dispatch:

jobs:
  build_and_test:
    name: Run tests
    runs-on: ${{ matrix.os }}
    timeout-minutes: 15
    strategy:
      fail-fast: false
      matrix:
        os: [ubuntu-latest, windows-latest, macos-latest]
        include:
          - os: ubuntu-latest
            coverage: true
    steps:
      - uses: actions/checkout@v6
      - uses: actions-rust-lang/setup-rust-toolchain@v1
      - name: Run cargo test
        shell: bash
        env:
          MUSE2_TEST_OUTPUT_DIR: test_results
        run: |
          mkdir $MUSE2_TEST_OUTPUT_DIR
          cargo test --verbose --no-fail-fast

      # Upload regression test results for analysis
      - uses: actions/upload-artifact@v7
        if: "!cancelled()"
        with:
          name: muse2_test_results_${{ matrix.os }}
          path: test_results

      - if: ${{ matrix.coverage }}
        uses: ./.github/actions/codecov
        with:
          token: ${{ secrets.CODECOV_TOKEN }}