Skip to content
Merged
Show file tree
Hide file tree
Changes from 11 commits
Commits
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
13 changes: 10 additions & 3 deletions .github/workflows/pre_release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -46,16 +46,23 @@ jobs:

unit_tests:
name: Unit tests
uses: apify/workflows/.github/workflows/python_unit_tests.yaml@main
uses: apify/workflows/.github/workflows/python_unit_tests.yaml@add-code-cov-to-python
secrets: inherit
with:
python-versions: '["3.10", "3.11", "3.12", "3.13", "3.14"]'
operating-systems: '["ubuntu-latest", "windows-latest"]'
python-version-for-codecov: "3.14"
operating-system-for-codecov: "ubuntu-latest"

integration_tests:
name: Integration tests
uses: apify/workflows/.github/workflows/python_integration_tests.yaml@main
uses: apify/workflows/.github/workflows/python_integration_tests.yaml@add-code-cov-to-python
secrets: inherit
with:
python-versions: '["3.10", "3.13"]'
python-versions: '["3.10", "3.14"]'
operating-systems: '["ubuntu-latest"]'
python-version-for-codecov: "3.14"
operating-system-for-codecov: "ubuntu-latest"

update_changelog:
name: Update changelog
Expand Down
6 changes: 0 additions & 6 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -55,12 +55,6 @@ jobs:
with:
python-versions: '["3.10", "3.11", "3.12", "3.13", "3.14"]'

unit_tests:
Comment thread
vdusek marked this conversation as resolved.
name: Unit tests
uses: apify/workflows/.github/workflows/python_unit_tests.yaml@main
with:
python-versions: '["3.10", "3.11", "3.12", "3.13", "3.14"]'

update_changelog:
name: Update changelog
needs: [release_metadata, lint_check, type_check, unit_tests]
Expand Down
11 changes: 9 additions & 2 deletions .github/workflows/run_code_checks.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -26,9 +26,13 @@ jobs:

unit_tests:
name: Unit tests
uses: apify/workflows/.github/workflows/python_unit_tests.yaml@main
uses: apify/workflows/.github/workflows/python_unit_tests.yaml@add-code-cov-to-python
secrets: inherit
with:
python-versions: '["3.10", "3.11", "3.12", "3.13", "3.14"]'
operating-systems: '["ubuntu-latest", "windows-latest"]'
python-version-for-codecov: "3.14"
operating-system-for-codecov: "ubuntu-latest"

docs_check:
name: Docs check
Expand All @@ -37,7 +41,10 @@ jobs:

integration_tests:
name: Integration tests
uses: apify/workflows/.github/workflows/python_integration_tests.yaml@main
uses: apify/workflows/.github/workflows/python_integration_tests.yaml@add-code-cov-to-python
secrets: inherit
with:
python-versions: '["3.10", "3.14"]'
operating-systems: '["ubuntu-latest"]'
python-version-for-codecov: "3.14"
operating-system-for-codecov: "ubuntu-latest"
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,8 @@ build/
# Coverage reports
.coverage*
htmlcov
coverage-unit.xml
coverage-integration.xml

# IDE, editors
.vscode
Expand Down
29 changes: 24 additions & 5 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
.PHONY: clean install-dev build publish-to-pypi lint type-check unit-tests unit-tests-cov \
integration-tests format check-code build-api-reference build-docs run-docs
.PHONY: clean install-dev build publish-to-pypi lint type-check unit-tests unit-tests-cov integration-tests \
integration-tests-cov format check-code build-api-reference build-docs run-docs

# This is default for local testing, but GitHub workflows override it to a higher value in CI
INTEGRATION_TESTS_CONCURRENCY = 1
Expand All @@ -26,13 +26,32 @@ type-check:
uv run mypy

unit-tests:
uv run pytest --numprocesses=auto -vv --cov=src/apify tests/unit
uv run pytest \
--numprocesses=auto \
--verbose \
tests/unit

unit-tests-cov:
uv run pytest --numprocesses=auto -vv --cov=src/apify --cov-report=html tests/unit
uv run pytest \
--numprocesses=auto \
--verbose \
--cov=src/apify \
--cov-report=xml:coverage-unit.xml \
tests/unit

integration-tests:
uv run pytest --numprocesses=$(INTEGRATION_TESTS_CONCURRENCY) -vv tests/integration
uv run pytest \
--numprocesses=$(INTEGRATION_TESTS_CONCURRENCY) \
--verbose \
tests/integration

integration-tests-cov:
uv run pytest \
--numprocesses=$(INTEGRATION_TESTS_CONCURRENCY) \
--verbose \
--cov=src/apify \
--cov-report=xml:coverage-integration.xml \
tests/integration

format:
uv run ruff check --fix
Expand Down
3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,9 @@
<a href="https://pypi.org/project/apify/" rel="nofollow">
<img src="https://img.shields.io/pypi/dm/apify" alt="PyPI - Downloads" style="max-width: 100%;">
</a>
<a href="https://codecov.io/gh/apify/apify-sdk-python" >
<img src="https://codecov.io/gh/apify/apify-sdk-python/graph/badge.svg?token=Y6JBIZQFT6" alt="Code cov report" style="max-width: 100%;"/>
</a>
<a href="https://pypi.org/project/apify/" rel="nofollow">
<img src="https://img.shields.io/pypi/pyversions/apify" alt="PyPI - Python Version" style="max-width: 100%;">
</a>
Expand Down
4 changes: 4 additions & 0 deletions tests/integration/actor/test_actor_api_helpers.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@
import json
from typing import TYPE_CHECKING

import pytest

from crawlee._utils.crypto import crypto_random_object_id

from .._utils import generate_unique_resource_name
Expand Down Expand Up @@ -195,6 +197,7 @@ async def main_outer() -> None:
assert inner_output_record['value'] == f'{test_value}_XXX_{test_value}'


@pytest.mark.skip(reason='Known failing test, pending investigation.')
async def test_actor_calls_task(
make_actor: MakeActorFunction,
run_actor: RunActorFunction,
Expand Down Expand Up @@ -248,6 +251,7 @@ async def main_outer() -> None:
await apify_client_async.task(task['id']).delete()


@pytest.mark.skip(reason='Known failing test, pending investigation.')
async def test_actor_aborts_another_actor_run(
make_actor: MakeActorFunction,
run_actor: RunActorFunction,
Expand Down
3 changes: 3 additions & 0 deletions tests/integration/actor/test_actor_log.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,15 @@

from typing import TYPE_CHECKING

import pytest

from apify import Actor, __version__

if TYPE_CHECKING:
from .conftest import MakeActorFunction, RunActorFunction


@pytest.mark.skip(reason='Known failing test, pending investigation.')
async def test_actor_logging(
make_actor: MakeActorFunction,
run_actor: RunActorFunction,
Expand Down
3 changes: 3 additions & 0 deletions tests/integration/actor/test_actor_scrapy.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,13 @@
from pathlib import Path
from typing import TYPE_CHECKING

import pytest

if TYPE_CHECKING:
from .conftest import MakeActorFunction, RunActorFunction


@pytest.mark.skip(reason='Known failing test, pending investigation.')
async def test_actor_scrapy_title_spider(
make_actor: MakeActorFunction,
run_actor: RunActorFunction,
Expand Down