-
Notifications
You must be signed in to change notification settings - Fork 32
71 lines (60 loc) · 1.92 KB
/
Copy pathtesting.yml
File metadata and controls
71 lines (60 loc) · 1.92 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
name: CI
permissions:
contents: read
on:
push:
branches:
- main
tags: "*"
pull_request:
env:
ERT_SHOW_BACKTRACE: 1
UV_SYSTEM_PYTHON: 1
jobs:
tests:
name: "Python ${{ matrix.python-version }} on ${{ matrix.os }}${{ matrix.pandas-version && format(' (pandas {0})', matrix.pandas-version) || '' }}"
runs-on: ${{ matrix.os }}
permissions:
contents: read
strategy:
fail-fast: false
matrix:
python-version: ["3.12", "3.13", "3.14"]
pandas-version: [">3"]
os: [ ubuntu-latest ]
include:
- python-version: "3.14"
os: macos-latest
- python-version: "3.14"
pandas-version: ">=2,<3"
os: ubuntu-latest
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
fetch-depth: 0
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
with:
python-version: "${{ matrix.python-version }}"
- name: Install uv
uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0
with:
enable-cache: true
prune-cache: false
cache-dependency-glob: pyproject.toml
python-version: "${{ matrix.python-version }}"
- name: Install Ubuntu dependencies
if: matrix.os == 'ubuntu-latest'
run: |
sudo apt-get update
sudo apt-get install libegl1
shell: bash
- name: Install semeio and dependencies
run: |
uv sync --frozen
- name: Pin pandas version
if: matrix.pandas-version
run: uv pip install "pandas${{ matrix.pandas-version }}"
- name: "Run tests"
run: uv run --no-sync pytest tests -n logical --durations 5 --ert-integration
- name: "Run doctests on fmudesign"
run: uv run --no-sync pytest ./src/semeio/fmudesign/ --doctest-modules -v