Merged
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR introduces time testing utilities for Temporal workflows, enabling developers to control and manipulate time during workflow tests. The main additions include a TemporalTestTime class for time control operations and a WithoutTimeSkipping trait to manage time-skipping behavior in test scenarios.
Key changes:
- Added
TemporalTestTimeutility class with methods for locking/unlocking time skipping and advancing time in tests - Introduced
WithoutTimeSkippingtrait for fine-grained control over time-skipping behavior in individual tests - Updated documentation with comprehensive examples and clarifications about using fully qualified class names for testing traits
Reviewed changes
Copilot reviewed 11 out of 11 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
src/Testing/TemporalTestTime.php |
New utility class providing static methods to control time-skipping functionality in tests via TestService |
src/Testing/WithoutTimeSkipping.php |
New trait that locks time-skipping during test setup and unlocks it during teardown |
src/LaravelTemporalServiceProvider.php |
Registers TemporalTestTime as a singleton in the service container |
tests/Integrations/Temporal/AsyncWorkflowTest.php |
Integration test demonstrating time-skipping functionality with a 3-second timer |
tests/Fixtures/WorkflowDiscovery/Workflows/AsyncWorkflow.php |
Test fixture workflow that yields a 3-second timer |
tests/Unit/Discovery/WorkflowDiscoveryTest.php |
Updated to include AsyncWorkflow in the list of discovered workflows |
src/Testing/TemporalTestingWorker.php |
Removed unnecessary type cast in string contains check |
src/Testing/LocalTemporalServer.php |
Removed unnecessary type cast in string contains check |
rector.php |
Removed FunctionLikeToFirstClassCallableRector rule and its import |
phpunit.xml.dist |
Changed TEMPORAL_TESTING_SERVER_TIME_SKIPPING default from false to true |
README.md |
Enhanced documentation with fully qualified trait names and added comprehensive time-skipping examples |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
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.
No description provided.