Skip to content

Commit

Permalink
testing breaking into rust-tests and py-tests
Browse files Browse the repository at this point in the history
  • Loading branch information
robinsteuteville committed Feb 23, 2024
1 parent 53bdf67 commit 5b11186
Show file tree
Hide file tree
Showing 4 changed files with 155 additions and 127 deletions.
96 changes: 60 additions & 36 deletions .github/workflows/py-tests.yaml
Original file line number Diff line number Diff line change
@@ -1,36 +1,60 @@
# name: py-tests

# on:
# push:
# branches: [fastsim-2, fastsim-3]
# pull_request:
# workflow_dispatch:
# workflow_call:

# jobs:
# test:
# # might not be needed
# # if: github.repository == 'nrel/fastsim'

# runs-on: ubuntu-latest

# strategy:
# fail-fast: true
# matrix:
# python-version: ['3.8', '3.9', '3.10']

# # if: contains(github.event.pull_request.changed_files, 'python/') || contains(github.event.pull_request.changed_files, 'rust/')
# env:
# PYTHON: ${{ matrix.python-version }}
# steps:
# - uses: actions/checkout@v3

# - name: set up python ${{ matrix.python-version }}
# uses: actions/setup-python@v4
# with:
# python-version: ${{ matrix.python-version }}

# - name: Python unit tests
# run: |
# pip install -e ".[dev]" && pytest -v python/fastsim/tests/
# pytest -v python/fastsim/demos/
name: tests

on:
push:
branches: [fastsim-2, fastsim-3]
paths:
- "python/**"
- "rust/**"
pull_request:
paths:
- "python/**"
- "rust/**"
workflow_dispatch:
workflow_call:

jobs:
call-rust-tests:
uses: nrel/fastsim/.github/workflows/rust-tests.yaml@main
test:
# might not be needed
# if: github.repository == 'nrel/fastsim'
needs: call-rust-tests
# add in if first step works
# if: ${{ github.repository == 'nrel/fastsim' }}
# or
# if: github.repository == 'nrel/fastsim'

runs-on: ubuntu-latest

strategy:
fail-fast: true
matrix:
python-version: ['3.8', '3.9', '3.10']

env:
PYTHON: ${{ matrix.python-version }}
steps:
- uses: actions/checkout@v3

- name: set up python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}

# not sure if this is needed if I'm only running python tests
# - name: install rust
# uses: actions-rs/toolchain@v1
# with:
# profile: minimal
# toolchain: stable
# override: true

- name: Python unit tests
run: |
pip install -e ".[dev]" && pytest -v python/fastsim/tests/
pytest -v python/fastsim/demos/
# in altrios, also includes Rust tests here -- but I think this would mean
# Rust and Python tests are always run (so, even if only python code is
# modified)
91 changes: 49 additions & 42 deletions .github/workflows/rust-tests.yaml
Original file line number Diff line number Diff line change
@@ -1,42 +1,49 @@
# name: rust-tests

# on:
# push:
# branches: [fastsim-2, fastsim-3]
# pull_request:
# workflow_dispatch:
# workflow_call:

# jobs:
# test:
# # might not be needed
# # if: github.repository == 'nrel/fastsim'

# runs-on: ubuntu-latest

# strategy:
# fail-fast: true
# # matrix:
# # python-version: ['3.8', '3.9', '3.10']

# # env:
# # PYTHON: ${{ matrix.python-version }}
# steps:
# - uses: actions/checkout@v3

# # - name: set up python ${{ matrix.python-version }}
# # uses: actions/setup-python@v4
# # with:
# # python-version: ${{ matrix.python-version }}

# # if: contains(github.event.pull_request.changed_files, 'rust/')
# - name: install rust
# uses: actions-rs/toolchain@v1
# with:
# profile: minimal
# toolchain: stable
# override: true

# - name: Rust unit tests
# run: |
# cd rust/ && cargo test
name: tests

on:
push:
branches: [fastsim-2, fastsim-3]
paths:
- "rust/**"
pull_request:
paths:
- "rust/**"
workflow_dispatch:
workflow_call:

jobs:
test:
# might not be needed
# if: github.repository == 'nrel/fastsim'

runs-on: ubuntu-latest

strategy:
fail-fast: true
# matrix:
# python-version: ['3.8', '3.9', '3.10']

# env:
# PYTHON: ${{ matrix.python-version }}
steps:
- uses: actions/checkout@v3

# - name: set up python ${{ matrix.python-version }}
# uses: actions/setup-python@v4
# with:
# python-version: ${{ matrix.python-version }}

# if: contains(github.event.pull_request.changed_files, 'rust/')
- name: install rust
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: stable
override: true

- name: Rust unit tests
run: |
cd rust/ && cargo test
# in altrios, also includes python tests here, not sure I
# understand what added benefit this gives
92 changes: 44 additions & 48 deletions .github/workflows/tests.yaml
Original file line number Diff line number Diff line change
@@ -1,48 +1,44 @@
name: tests

on:
push:
branches: [fastsim-2, fastsim-3]
pull_request:
workflow_dispatch:

jobs:
test:
# if: ${{ github.repository == 'nrel/fastsim' }}
runs-on: ubuntu-latest

strategy:
fail-fast: true
matrix:
python-version: ['3.8', '3.9', '3.10']

env:
PYTHON: ${{ matrix.python-version }}
steps:
# - ${{ if eq(github.repository, 'NREL/fastsim') }}:
- uses: actions/checkout@v3

- name: set up python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}

- name: install rust
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: stable
override: true

- name: Rust unit tests
if: ${{ github.repository == 'nrel/fastsim' && contains(github.event.pull_request.changed_files, 'rust/') }}
# if: ${{ contains(github.event.pull_request.changed_files, 'rust/') }}
run: |
cd rust/ && cargo test
- name: Python unit tests
if: ${{ github.repository == 'nrel/fastsim' && (contains(github.event.pull_request.changed_files, 'python/') || contains(github.event.pull_request.changed_files, 'rust/')) }}
# if: ${{ contains(github.event.pull_request.changed_files, 'python/') || contains(github.event.pull_request.changed_files, 'rust/') }}
run: |
pip install -e ".[dev]" && pytest -v python/fastsim/tests/
pytest -v python/fastsim/demos/
# name: tests

# on:
# push:
# branches: [fastsim-2, fastsim-3]
# pull_request:
# workflow_dispatch:

# jobs:
# test:
# runs-on: ubuntu-latest

# strategy:
# fail-fast: true
# matrix:
# python-version: ['3.8', '3.9', '3.10']

# env:
# PYTHON: ${{ matrix.python-version }}
# steps:
# - uses: actions/checkout@v3

# - name: set up python ${{ matrix.python-version }}
# uses: actions/setup-python@v4
# with:
# python-version: ${{ matrix.python-version }}

# - name: install rust
# uses: actions-rs/toolchain@v1
# with:
# profile: minimal
# toolchain: stable
# override: true

# - name: Rust unit tests
# if: ${{ github.repository == 'nrel/fastsim' && contains(github.event.pull_request.changed_files, 'rust/') }}
# run: |
# cd rust/ && cargo test

# - name: Python unit tests
# if: ${{ github.repository == 'nrel/fastsim' && (contains(github.event.pull_request.changed_files, 'python/') || contains(github.event.pull_request.changed_files, 'rust/')) }}
# run: |
# pip install -e ".[dev]" && pytest -v python/fastsim/tests/
# pytest -v python/fastsim/demos/
3 changes: 2 additions & 1 deletion .github/workflows/wheels.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,11 @@ on:

jobs:
call-tests:
uses: nrel/fastsim/.github/workflows/tests.yaml@main
uses: nrel/fastsim/.github/workflows/py-tests.yaml@main
# nrel/fastsim/.github/workflows/rust-tests.yaml@main && nrel/fastsim/.github/workflows/py-tests.yaml@main
build:
name: build py3.${{ matrix.python-version }} on ${{ matrix.platform || matrix.os }}
needs: call-tests
strategy:
fail-fast: true
matrix:
Expand Down

0 comments on commit 5b11186

Please sign in to comment.