Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
23753e7
Add api tests stateless
fege Jun 24, 2025
28d329f
Fix github action failures, lint and nox
fege Jun 24, 2025
e81a14a
Add too_slow and remove code to force the model version id
fege Jun 24, 2025
f67b1a8
Add filter_too_much
fege Jun 24, 2025
25ef85b
add hook to avoid Unsatisfiable
fege Jun 25, 2025
7043310
remove variable
fege Jun 25, 2025
631168d
Merge branch 'main' of github.com:fege/model-registry-kubeflow into R…
fege Jun 25, 2025
09d24f9
add artifact_states
fege Jun 26, 2025
1059bf7
Merge branch 'main' of github.com:fege/model-registry-kubeflow into R…
fege Jun 26, 2025
e9ec8e3
Add example to schema
fege Jun 27, 2025
d8210c4
Add example in src
fege Jun 27, 2025
9ff33ce
register strategy for string of int64
fege Jun 27, 2025
b785fcf
sort imports
fege Jun 27, 2025
325f26f
Merge branch 'main' of github.com:fege/model-registry-kubeflow into R…
fege Jun 30, 2025
b686d7b
modify case for problematic endpoints
fege Jun 30, 2025
79e9e21
add more examples
fege Jul 1, 2025
3b8becc
Merge branch 'main' of github.com:fege/model-registry-kubeflow into R…
fege Jul 1, 2025
f9ad748
pin urllib
fege Jul 1, 2025
7374841
Merge branch 'main' of github.com:fege/model-registry-kubeflow into R…
fege Jul 2, 2025
f40a007
exclude problematic endpoints and test with valid data
fege Jul 2, 2025
ed65e4b
Add gha to run the test and mark them with fuzz
fege Jul 3, 2025
29c759f
revert change in Makefile pushed by error
fege Jul 3, 2025
7ca6053
skip test not marked with e2e or fuzz, trigger the fuzz on pr comment
fege Jul 3, 2025
0fa6cdf
trigger with label
fege Jul 3, 2025
d69c88d
correct the label name
fege Jul 3, 2025
063fa94
add types and semplify the if
fege Jul 3, 2025
57d7ecf
do not run e2e if test-fuzz label is added
fege Jul 3, 2025
7abe73c
unpin urllib
fege Jul 3, 2025
47d67ea
modify lock
fege Jul 3, 2025
3454603
fix: remove proc on label
Al-Pragliola Jul 3, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 9 additions & 1 deletion .github/workflows/python-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ on:
- ".github/ISSUE_TEMPLATE/**"
- ".github/dependabot.yml"
- "docs/**"

jobs:
lint:
name: ${{ matrix.session }}
Expand Down Expand Up @@ -221,6 +220,15 @@ jobs:
kubectl port-forward service/distribution-registry-test-service 5001:5001 &
sleep 2
nox --python=${{ matrix.python }} --session=e2e -- --cov-report=xml
- name: Nox test fuzz (main only)
if: github.ref == 'refs/heads/main'
working-directory: clients/python
run: |
kubectl port-forward -n kubeflow service/model-registry-service 8080:8080 &
kubectl port-forward -n minio svc/minio 9000:9000 &
kubectl port-forward service/distribution-registry-test-service 5001:5001 &
sleep 2
nox --python=${{ matrix.python }} --session=fuzz

docs-build:
name: ${{ matrix.session }}
Expand Down
1 change: 1 addition & 0 deletions clients/python/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,4 @@
__pycache__/
venv/
.port-forwards.pid
.hypothesis/
10 changes: 10 additions & 0 deletions clients/python/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,16 @@ test-e2e: deploy-latest-mr deploy-local-registry deploy-test-minio
$(MAKE) test-e2e-cleanup
@exit $$STATUS

.PHONY: test-fuzz
test-fuzz: deploy-latest-mr deploy-local-registry deploy-test-minio
@echo "Starting test-fuzz"
poetry install --all-extras
@set -a; . ../../scripts/manifests/minio/.env; set +a; \
poetry run pytest --fuzz -v -s --hypothesis-show-statistics
@rm -f ../../scripts/manifests/minio/.env
$(MAKE) test-e2e-cleanup
@exit $$STATUS

.PHONY: test-e2e-run
test-e2e-run:
@echo "Ensuring all extras are installed..."
Expand Down
6 changes: 6 additions & 0 deletions clients/python/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -345,6 +345,12 @@ Then you can run tests:
make test test-e2e
```

Then you can run fuzz tests:

```bash
make test-fuzz
```

### Using Nox

Common tasks, such as building documentation and running tests, can be executed using [`nox`](https://github.com/wntrblm/nox) sessions.
Expand Down
18 changes: 18 additions & 0 deletions clients/python/noxfile.py
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@ def tests(session: Session) -> None:
"pytest-asyncio",
"uvloop",
"olot",
"schemathesis",
)
session.run(
"pytest",
Expand All @@ -83,6 +84,7 @@ def e2e_tests(session: Session) -> None:
"boto3",
"olot",
"uvloop",
"schemathesis",
)
try:
session.run(
Expand All @@ -99,6 +101,22 @@ def e2e_tests(session: Session) -> None:
session.notify("coverage", posargs=[])


@session(name="fuzz", python=python_versions)
def fuzz_tests(session: Session) -> None:
"""Run the fuzzing tests."""
session.install(
".",
"requests",
"pytest",
"uvloop",
"olot",
"schemathesis",
)
session.run(
"pytest",
"--fuzz",
"-rA",
)
@session(python=python_versions[0])
def coverage(session: Session) -> None:
"""Produce the coverage report."""
Expand Down
Loading
Loading