Skip to content

Commit

Permalink
siemple-example tests
Browse files Browse the repository at this point in the history
  • Loading branch information
pcanto-hopeit committed Feb 21, 2024
1 parent f64a671 commit 55fabab
Show file tree
Hide file tree
Showing 3 changed files with 48 additions and 20 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,12 @@

async def __service__(context: EventContext) -> Spawn[SomethingParams]:
i = 1
if not os.path.exists("/tmp/hopeit.initializead"):
if not os.path.exists("/tmp/hopeit.initialized"):
raise RuntimeError(
"Missing /tmp/hopeit.initializead file. "
"Missing /tmp/hopeit.initialized file. "
"Service will not start until run setup_something."
)
os.remove("/tmp/hopeit.initializead")
os.remove("/tmp/hopeit.initialized")
while service_running(context):
logger.info(context, f"Generating something event {i}...")
yield SomethingParams(f"id{i}", f"user{i}")
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
"""
Simple Example: Setup Something
--------------------------------------------------------------------
Setup run before initialize endpoints streams and services
SETUP EventType runs before initializing endpoints, streams, and services.
"""

from pathlib import Path
Expand All @@ -18,7 +18,7 @@

async def run_once(payload: None, context: EventContext):
"""
Load objects that match the given wildcard
This method initializes the environment.
"""
logger.info(context, "Setup done")
Path("/tmp/hopeit.initializead").touch()
Path("/tmp/hopeit.initialized").touch()
Original file line number Diff line number Diff line change
Expand Up @@ -5,20 +5,48 @@


@pytest.mark.asyncio
async def test_it_something_generator(app_config, something_params_example): # noqa: F811
result = await execute_event(app_config=app_config,
event_name='service.something_generator',
payload=something_params_example)
assert result == Something(something_params_example.id,
User(something_params_example.user, something_params_example.user))
async def test_it_something_generator_with_setup_service(
app_config, something_params_example
): # noqa: F811
results = await execute_event(
app_config=app_config, event_name="setup_something", payload=None
)
results = await execute_service(
app_config=app_config, event_name="service.something_generator", max_events=2
)
assert results == [
Something(
id="id1", user=User(id="user1", name="user1"), status=None, history=[]
),
Something(
id="id2", user=User(id="user2", name="user2"), status=None, history=[]
),
]


@pytest.mark.asyncio
async def test_it_something_generator_service(app_config, something_params_example): # noqa: F811
results = await execute_service(app_config=app_config,
event_name='service.something_generator',
max_events=2)
assert results == [
Something(id='id1', user=User(id='user1', name='user1'), status=None, history=[]),
Something(id='id2', user=User(id='user2', name='user2'), status=None, history=[]),
]
async def test_it_something_generator(
app_config, something_params_example
): # noqa: F811
result = await execute_event(
app_config=app_config,
event_name="service.something_generator",
payload=something_params_example,
)
assert result == Something(
something_params_example.id,
User(something_params_example.user, something_params_example.user),
)


@pytest.mark.asyncio
async def test_it_something_generator_service(app_config, something_params_example):
with pytest.raises(RuntimeError) as exc_info:
await execute_service(
app_config=app_config,
event_name="service.something_generator",
max_events=2,
)
assert (
str(exc_info.value) == "Service will not start until run setup_something."
)

0 comments on commit 55fabab

Please sign in to comment.