-
Notifications
You must be signed in to change notification settings - Fork 4
Major changes in the documentation and schemas created #99
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
a678e71
bf4e7e4
38259c7
ed945bb
27a4c18
f816396
e9b7fdc
ebfb804
a325e34
dd5f83b
a7ba3a1
e799da3
18f47bd
3a13d59
e55eb9b
ad4b891
d66489c
3d5de99
4cbdbbe
b3e3d40
82eff25
491ed3a
08c61ae
5181fa4
9d15bc7
4bd42ce
d11b9a0
e747948
4f29c50
d4c4e1c
b3fd4f8
1e283f4
bc68ee2
c863b94
77f400c
32be8d0
1cb8f63
547585e
ccd043e
fde8f71
268ce1e
7fc4eec
caf6612
3f88c7c
5f84a68
98acb29
288f732
7a46244
f33cc59
434c272
1676b11
c130450
45c6323
57ea767
08fbce1
3afefff
a001994
0ed8d8a
2fa2942
583005d
be5e432
8ce4f5e
a88aa3d
de66d9a
e29cd81
0ff3ab3
e83a39c
c2d9442
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,67 @@ | ||
name: Integration Tests | ||
|
||
on: | ||
release: | ||
types: [published] | ||
workflow_dispatch: | ||
inputs: | ||
test_type: | ||
description: 'Type of integration test to run' | ||
required: true | ||
default: 'all' | ||
type: choice | ||
options: | ||
- all | ||
- full-conversion-suite | ||
- lfq-only | ||
- tmt-only | ||
|
||
jobs: | ||
integration-tests: | ||
runs-on: ubuntu-latest | ||
timeout-minutes: 60 # 1 hour timeout for the entire job | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
|
||
- name: Set up Python 3.10 | ||
uses: actions/setup-python@v4 | ||
with: | ||
python-version: "3.10" | ||
|
||
- name: Install dependencies | ||
run: | | ||
python -m pip install --upgrade pip | ||
python -m pip install pytest pytest-timeout | ||
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi | ||
pip install poetry | ||
# Install package in development mode | ||
poetry install | ||
|
||
- name: Run Full Conversion Suite Tests | ||
if: ${{ github.event.inputs.test_type == 'all' || github.event.inputs.test_type == 'full-conversion-suite' || github.event_name == 'release' }} | ||
run: | | ||
poetry run pytest -vv tests/test_full_conversion_suite.py --timeout=900 | ||
env: | ||
PYTHONIOENCODING: utf-8 | ||
|
||
- name: Run LFQ Tests Only | ||
if: ${{ github.event.inputs.test_type == 'lfq-only' }} | ||
run: | | ||
poetry run pytest -vv tests/test_full_conversion_suite.py -k "lfq" --timeout=900 | ||
env: | ||
PYTHONIOENCODING: utf-8 | ||
|
||
- name: Run TMT Tests Only | ||
if: ${{ github.event.inputs.test_type == 'tmt-only' }} | ||
run: | | ||
poetry run pytest -vv tests/test_full_conversion_suite.py -k "tmt" --timeout=900 | ||
env: | ||
PYTHONIOENCODING: utf-8 | ||
|
||
- name: Run All Integration Tests | ||
if: ${{ github.event.inputs.test_type == 'all' || github.event_name == 'release' }} | ||
run: | | ||
poetry run pytest -vv -m "integration" --timeout=900 | ||
env: | ||
PYTHONIOENCODING: utf-8 |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -8,6 +8,11 @@ on: | |
branches: [ "main", "dev" ] | ||
pull_request: | ||
branches: [ "main" ] | ||
schedule: | ||
# Run full test suite daily at 2 AM UTC | ||
- cron: '0 2 * * *' | ||
workflow_dispatch: | ||
# Allow manual triggering | ||
|
||
permissions: | ||
contents: read | ||
|
@@ -17,36 +22,85 @@ jobs: | |
PythonBlack: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v2 | ||
- uses: actions/checkout@v4 | ||
|
||
- name: Check code lints with Black | ||
uses: psf/black@stable | ||
with: | ||
options: ". --check" | ||
|
||
build: | ||
|
||
unit-tests: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- uses: actions/checkout@v4 | ||
- name: Set up Python 3.10 | ||
uses: actions/setup-python@v3 | ||
uses: actions/setup-python@v4 | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🛠️ Refactor suggestion Update GitHub Actions to latest versions. The static analysis tool correctly identifies that - uses: actions/setup-python@v4
+ uses: actions/setup-python@v5 Apply this change to all three occurrences (lines 37, 66, and 90). Also applies to: 66-66, 90-90 🧰 Tools🪛 actionlint (1.7.7)37-37: the runner of "actions/setup-python@v4" action is too old to run on GitHub Actions. update the action's version to fix this issue (action) 🤖 Prompt for AI Agents
|
||
with: | ||
python-version: "3.10" | ||
- name: Install dependencies | ||
run: | | ||
python -m pip install --upgrade pip | ||
python -m pip install flake8 pytest | ||
python -m pip install flake8 pytest pytest-timeout | ||
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi | ||
pip install poetry | ||
poetry build | ||
pip install dist/*.whl | ||
# Install package in development mode | ||
poetry install | ||
- name: Lint with flake8 | ||
run: | | ||
# stop the build if there are Python syntax errors or undefined names | ||
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics | ||
# exit-zero treats all errors as warnings. The GitHub editor is 130 chars wide | ||
flake8 . --count --exit-zero --max-complexity=30 --max-line-length=130 --statistics --ignore F401,W503,W504 | ||
- name: Test with pytest | ||
- name: Test with pytest (Unit Tests Only) | ||
run: | | ||
# Run all tests except integration tests | ||
poetry run pytest -vv -m "not integration" | ||
|
||
integration-tests: | ||
runs-on: ubuntu-latest | ||
needs: unit-tests # Only run if unit tests pass | ||
if: github.event_name == 'push' || (github.event_name == 'pull_request' && contains(github.event.pull_request.labels.*.name, 'run-integration-tests')) | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Set up Python 3.10 | ||
uses: actions/setup-python@v4 | ||
with: | ||
python-version: "3.10" | ||
- name: Install dependencies | ||
run: | | ||
python -m pip install --upgrade pip | ||
python -m pip install flake8 pytest pytest-timeout | ||
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi | ||
pip install poetry | ||
# Install package in development mode | ||
poetry install | ||
- name: Test with pytest (Integration Tests) | ||
run: | | ||
# Run only integration tests with longer timeout | ||
poetry run pytest -vv -m "integration" --timeout=900 | ||
env: | ||
PYTHONIOENCODING: utf-8 | ||
|
||
full-test-suite: | ||
runs-on: ubuntu-latest | ||
if: github.ref == 'refs/heads/main' || github.event_name == 'schedule' | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Set up Python 3.10 | ||
uses: actions/setup-python@v4 | ||
with: | ||
python-version: "3.10" | ||
- name: Install dependencies | ||
run: | | ||
python -m pip install --upgrade pip | ||
python -m pip install flake8 pytest pytest-timeout | ||
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi | ||
pip install poetry | ||
# Install package in development mode | ||
poetry install | ||
- name: Test with pytest (All Tests) | ||
run: | | ||
poetry run pytest -vv | ||
# Run all tests including integration tests | ||
poetry run pytest -vv --timeout=900 | ||
env: | ||
PYTHONIOENCODING: utf-8 |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -10,34 +10,63 @@ on: | |
branches: [ "dev" ] | ||
|
||
jobs: | ||
build: | ||
|
||
unit-tests: | ||
runs-on: ubuntu-latest | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
python-version: ["3.10", "3.11"] | ||
|
||
steps: | ||
- uses: actions/checkout@v3 | ||
- uses: actions/checkout@v4 | ||
- name: Set up Python ${{ matrix.python-version }} | ||
uses: actions/setup-python@v3 | ||
uses: actions/setup-python@v4 | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Update GitHub Actions to latest version. The - uses: actions/setup-python@v4
+ uses: actions/setup-python@v5 Apply this change to both occurrences (lines 23 and 56). Also applies to: 56-56 🧰 Tools🪛 actionlint (1.7.7)23-23: the runner of "actions/setup-python@v4" action is too old to run on GitHub Actions. update the action's version to fix this issue (action) 🤖 Prompt for AI Agents
|
||
with: | ||
python-version: ${{ matrix.python-version }} | ||
- name: Install dependencies | ||
run: | | ||
python -m pip install --upgrade pip | ||
python -m pip install flake8 pytest | ||
python -m pip install flake8 pytest pytest-timeout | ||
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi | ||
pip install poetry | ||
poetry build | ||
pip install dist/*.whl | ||
# Install package in development mode | ||
poetry install | ||
- name: Lint with flake8 | ||
run: | | ||
# stop the build if there are Python syntax errors or undefined names | ||
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics | ||
# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide | ||
flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics | ||
- name: Test with pytest | ||
- name: Test with pytest (Unit Tests Only) | ||
run: | | ||
# Run all tests except integration tests | ||
poetry run pytest -vv -m "not integration" | ||
|
||
integration-tests: | ||
runs-on: ubuntu-latest | ||
needs: unit-tests # Only run if unit tests pass | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
python-version: ["3.10", "3.11"] | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Set up Python ${{ matrix.python-version }} | ||
uses: actions/setup-python@v4 | ||
with: | ||
python-version: ${{ matrix.python-version }} | ||
- name: Install dependencies | ||
run: | | ||
python -m pip install --upgrade pip | ||
python -m pip install flake8 pytest pytest-timeout | ||
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi | ||
pip install poetry | ||
# Install package in development mode | ||
poetry install | ||
- name: Test with pytest (Integration Tests) | ||
run: | | ||
poetry run pytest -vv | ||
# Run only integration tests with longer timeout | ||
poetry run pytest -vv -m "integration" --timeout=900 | ||
env: | ||
PYTHONIOENCODING: utf-8 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Update GitHub Actions to latest version.
The
actions/setup-python@v4
action is outdated and should be updated tov5
.📝 Committable suggestion
🧰 Tools
🪛 actionlint (1.7.7)
28-28: the runner of "actions/setup-python@v4" action is too old to run on GitHub Actions. update the action's version to fix this issue
(action)
🤖 Prompt for AI Agents