summaryrefslogtreecommitdiff
path: root/tests/temporal/Workflow/CancelSignalledChildWorkflow.php
diff options
context:
space:
mode:
authorValery Piashchynski <[email protected]>2021-01-27 14:34:31 +0300
committerGitHub <[email protected]>2021-01-27 14:34:31 +0300
commit6dd131497808f414ac1cb952d4b0b89b9e0689f8 (patch)
treef7af7d7d494d1f5ca272af1ad0b978fe44d685a9 /tests/temporal/Workflow/CancelSignalledChildWorkflow.php
parente2266b80db47444ba5858c736833a8a81b1361ad (diff)
parent744c2b0c86b88f77e681f8660bf3a476e83711b8 (diff)
Merge pull request #507 from spiral/refactor/temporal-plugins
refactoring(temporal): Move temporal plugin to the https://github.com/temporalio/roadrunner-temporal repository
Diffstat (limited to 'tests/temporal/Workflow/CancelSignalledChildWorkflow.php')
-rw-r--r--tests/temporal/Workflow/CancelSignalledChildWorkflow.php57
1 files changed, 0 insertions, 57 deletions
diff --git a/tests/temporal/Workflow/CancelSignalledChildWorkflow.php b/tests/temporal/Workflow/CancelSignalledChildWorkflow.php
deleted file mode 100644
index e2e43efa..00000000
--- a/tests/temporal/Workflow/CancelSignalledChildWorkflow.php
+++ /dev/null
@@ -1,57 +0,0 @@
-<?php
-
-namespace Temporal\Tests\Workflow;
-
-use React\Promise\Deferred;
-use Temporal\Workflow;
-use Temporal\Workflow\WorkflowMethod;
-
-#[Workflow\WorkflowInterface]
-class CancelSignalledChildWorkflow
-{
- private array $status = [];
-
- #[Workflow\QueryMethod(name: 'getStatus')]
- public function getStatus(): array
- {
- return $this->status;
- }
-
- #[WorkflowMethod(name: 'CancelSignalledChildWorkflow')]
- public function handler()
- {
- // typed stub
- $simple = Workflow::newChildWorkflowStub(SimpleSignalledWorkflow::class);
-
- $waitSignalled = new Deferred();
-
- $this->status[] = 'start';
-
- // start execution
- $scope = Workflow::newCancellationScope(
- function () use ($simple, $waitSignalled) {
- $call = $simple->handler();
- $this->status[] = 'child started';
-
- yield $simple->add(8);
- $this->status[] = 'child signalled';
- $waitSignalled->resolve();
-
- return yield $call;
- }
- );
-
- // only cancel scope when signal dispatched
- yield $waitSignalled;
- $scope->cancel();
- $this->status[] = 'scope cancelled';
-
- try {
- return yield $scope;
- } catch (\Throwable $e) {
- $this->status[] = 'process done';
-
- return 'cancelled ok';
- }
- }
-}