Skip to content
7 changes: 5 additions & 2 deletions tests/integration/conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -242,9 +242,12 @@ async def _make_actor(
actor_client = apify_client_async.actor(created_actor['id'])

print(f'Building Actor {actor_name}...')
build = await actor_client.build(version_number='0.0', wait_for_finish=300)
build_result = await actor_client.build(version_number='0.0')
build_client = apify_client_async.build(build_result['id'])
build_client_result = await build_client.wait_for_finish(wait_secs=300)

assert build['status'] == ActorJobStatus.SUCCEEDED
assert build_client_result is not None
assert build_client_result['status'] == ActorJobStatus.SUCCEEDED

# We only mark the client for cleanup if the build succeeded,
# so that if something goes wrong here,
Expand Down
35 changes: 28 additions & 7 deletions tests/integration/test_actor_api_helpers.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,20 +15,30 @@
from .conftest import ActorFactory


async def test_actor_reports_running_on_platform(make_actor: ActorFactory) -> None:
async def test_actor_reports_running_on_platform(
apify_client_async: ApifyClientAsync,
make_actor: ActorFactory,
) -> None:
async def main() -> None:
async with Actor:
assert Actor.is_at_home() is True

actor = await make_actor('is-at-home', main_func=main)

run_result = await actor.call()

assert run_result is not None
assert run_result['status'] == 'SUCCEEDED'

run_client = apify_client_async.run(run_result['id'])
run_client_result = await run_client.wait_for_finish(wait_secs=300)

assert run_client_result is not None
assert run_client_result['status'] == 'SUCCEEDED'

async def test_actor_retrieves_env_vars(make_actor: ActorFactory) -> None:

async def test_actor_retrieves_env_vars(
apify_client_async: ApifyClientAsync,
make_actor: ActorFactory,
) -> None:
async def main() -> None:
async with Actor:
env_dict = Actor.get_env()
Expand All @@ -48,12 +58,19 @@ async def main() -> None:
actor = await make_actor('get-env', main_func=main)

run_result = await actor.call()

assert run_result is not None

run_client = apify_client_async.run(run_result['id'])
run_client_result = await run_client.wait_for_finish(wait_secs=300)

assert run_client_result is not None
assert run_result['status'] == 'SUCCEEDED'


async def test_actor_creates_new_client_instance(make_actor: ActorFactory) -> None:
async def test_actor_creates_new_client_instance(
apify_client_async: ApifyClientAsync,
make_actor: ActorFactory,
) -> None:
async def main() -> None:
import os

Expand All @@ -71,8 +88,12 @@ async def main() -> None:
actor = await make_actor('new-client', main_func=main)

run_result = await actor.call()

assert run_result is not None

run_client = apify_client_async.run(run_result['id'])
run_client_result = await run_client.wait_for_finish(wait_secs=300)

assert run_client_result is not None
assert run_result['status'] == 'SUCCEEDED'

output_record = await actor.last_run().key_value_store().get_record('OUTPUT')
Expand Down
Loading