test: add integration test suite - #995
Merged
Merged
Conversation
Contributor
|
✅ The link checker did not find any broken links. See more at https://github.com/apify/apify-client-js/actions/runs/31389535952#summary-93457681720 |
vdusek
force-pushed
the
test/integration-suite
branch
from
August 10, 2026 12:45
2828ada to
3d820ba
Compare
vdusek
force-pushed
the
test/integration-suite
branch
from
August 10, 2026 13:54
3d820ba to
9828c5d
Compare
vdusek
marked this pull request as ready for review
August 10, 2026 14:17
Contributor
|
✅ The link checker did not find any broken links. See more at https://github.com/apify/apify-client-js/actions/runs/32118378470#summary-95652969405 |
vdusek
force-pushed
the
test/integration-suite
branch
from
August 18, 2026 08:49
3e99a9b to
a1ae2c6
Compare
B4nan
approved these changes
Aug 18, 2026
B4nan
left a comment
Member
There was a problem hiding this comment.
LGTM, nice suite.
One thing unrelated to the diff: the v3 branch looks outdated compared to master. For example, CONTRIBUTING.md here still documents the npm commands, while on master it already uses pnpm. Probably worth syncing v3 with master.
vdusek
added a commit
that referenced
this pull request
Aug 19, 2026
Port of the integration test suite from the Python API client. Adds an integration test suite that executes the client against the live Apify API. This is the same approach as in the Python API client: real API calls with a test user token, resources created under unique names and cleaned up afterwards, and eventual consistency handled by polling helpers rather than sleeps or retries. Merge this **before** #985, #986 and the rest of the v3 work, so those changes have some end-to-end test coverage. 196 tests over Actors, Actor versions, Actor env vars, builds, runs, logs, tasks, schedules, webhooks, webhook dispatches, datasets, key-value stores, request queues, the store, and users. `vitest.config.mts` now defines two projects, so the existing unit tests stay fast and offline: - `pnpm test` - unit tests only (unchanged behavior) - `pnpm test:integration` - integration tier only - `pnpm test:all` - both The tier needs `APIFY_TEST_USER_API_TOKEN`. A new `integration_tests` job in `check.yaml` runs the tier on Node 26. It is skipped for fork PRs, where repository secrets are unavailable, and can be triggered on demand via `workflow_dispatch`. *✍️ Drafted by Claude Code*
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Port of the integration test suite from the Python API client.
Adds an integration test suite that executes the client against the live Apify API. This is the same approach as in the Python API client: real API calls with a test user token, resources created under unique names and cleaned up afterwards, and eventual consistency handled by polling helpers rather than sleeps or retries.
Merge this before #985, #986 and the rest of the v3 work, so those changes have some end-to-end test coverage.
Coverage
196 tests over Actors, Actor versions, Actor env vars, builds, runs, logs, tasks, schedules, webhooks, webhook dispatches, datasets, key-value stores, request queues, the store, and users.
Test tiers
vitest.config.mtsnow defines two projects, so the existing unit tests stay fast and offline:pnpm test- unit tests only (unchanged behavior)pnpm test:integration- integration tier onlypnpm test:all- bothCredentials
The tier needs
APIFY_TEST_USER_API_TOKEN.CI
A new
integration_testsjob incheck.yamlruns the tier on Node 26. It is skipped for fork PRs, where repository secrets are unavailable, and can be triggered on demand viaworkflow_dispatch.✍️ Drafted by Claude Code