Skip to content

Commit

Permalink
add tests
Browse files Browse the repository at this point in the history
  • Loading branch information
dimastbk committed Jan 5, 2025
1 parent cfd2a7a commit 82879e8
Show file tree
Hide file tree
Showing 4 changed files with 41 additions and 1 deletion.
5 changes: 5 additions & 0 deletions tests/unit/client/client_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,11 @@ async def test_cancel_process_instance(zeebe_client: ZeebeClient, grpc_servicer:
)


@pytest.mark.asyncio
async def test_broadcast_signal(zeebe_client: ZeebeClient):
await zeebe_client.broadcast_signal(signal_name=str(uuid4()))


@pytest.mark.asyncio
async def test_publish_message(zeebe_client: ZeebeClient):
await zeebe_client.publish_message(name=str(uuid4()), correlation_key=str(uuid4()))
10 changes: 10 additions & 0 deletions tests/unit/client/sync_client_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,16 @@ def test_calls_deploy_resource_of_zeebe_client(self, sync_zeebe_client: SyncZeeb
sync_zeebe_client.client.deploy_resource.assert_called_with(file_path, tenant_id=None)


class TestBroadcastSignal:
def test_calls_broadcast_signal_of_zeebe_client(self, sync_zeebe_client: SyncZeebeClient):
sync_zeebe_client.client.broadcast_signal = AsyncMock()
name = str(uuid4())

sync_zeebe_client.broadcast_signal(name)

sync_zeebe_client.client.broadcast_signal.assert_called_once()


class TestPublishMessage:
def test_calls_publish_message_of_zeebe_client(self, sync_zeebe_client: SyncZeebeClient):
sync_zeebe_client.client.publish_message = AsyncMock()
Expand Down
23 changes: 22 additions & 1 deletion tests/unit/grpc_internals/zeebe_message_adapter_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
import pytest

from pyzeebe.errors import MessageAlreadyExistsError
from pyzeebe.grpc_internals.types import PublishMessageResponse
from pyzeebe.grpc_internals.types import BroadcastSignalResponse, PublishMessageResponse
from pyzeebe.grpc_internals.zeebe_message_adapter import ZeebeMessageAdapter
from tests.unit.utils.random_utils import RANDOM_RANGE

Expand Down Expand Up @@ -52,3 +52,24 @@ async def test_raises_on_duplicate_message(self):
with pytest.raises(MessageAlreadyExistsError):
await self.publish_message(message_id=message_id)
await self.publish_message(message_id=message_id)


@pytest.mark.asyncio
class TestBroadcastSignal:
zeebe_message_adapter: ZeebeMessageAdapter

@pytest.fixture(autouse=True)
def set_up(self, zeebe_adapter: ZeebeMessageAdapter):
self.zeebe_message_adapter = zeebe_adapter

async def broadcast_signal(
self,
name=str(uuid4()),
variables={},
):
return await self.zeebe_message_adapter.broadcast_signal(name, variables)

async def test_response_is_of_correct_type(self):
response = await self.broadcast_signal()

assert isinstance(response, BroadcastSignalResponse)
4 changes: 4 additions & 0 deletions tests/unit/utils/gateway_mock.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
from pyzeebe.proto.gateway_pb2 import (
ActivatedJob,
ActivateJobsResponse,
BroadcastSignalResponse,
CancelProcessInstanceResponse,
CompleteJobResponse,
CreateProcessInstanceResponse,
Expand Down Expand Up @@ -201,6 +202,9 @@ def DeployResource(self, request, context):

return DeployResourceResponse(key=randint(0, RANDOM_RANGE), deployments=resources, tenantId=request.tenantId)

def BroadcastSignal(self, request, context):
return BroadcastSignalResponse()

def PublishMessage(self, request, context):
if request.messageId in self.messages.keys():
context.set_code(grpc.StatusCode.ALREADY_EXISTS)
Expand Down

0 comments on commit 82879e8

Please sign in to comment.