Download the PHP package paksuco/dusk-time-travel without Composer
On this page you can find all versions of the php package paksuco/dusk-time-travel. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download paksuco/dusk-time-travel
More information about paksuco/dusk-time-travel
Files in paksuco/dusk-time-travel
Package dusk-time-travel
Short Description A dusk browser extension package for time traveling
License MIT
Homepage https://github.com/paksuco/dusk-time-travel
Informations about the package dusk-time-travel
## A dusk browser extension package for time traveling
This package feeds the hunger for Dusk test cases having time modified requests. All PR's are welcome since it's still not mature enough, and might not work as expected. But I think it's easy to understand what this package does.
Installation
You can install the package via composer:
There is a crucial step to do after installing the package to let the browser have time travel methods, you need to extend your browser class from Paksuco/DuskTimeTravel/Browser
class instead of the stock Laravel/Dusk/Browser
. This class acts like a middle man between your test cases and the Laravel Dusk browser.
To do this, add this code to your DuskTestCase.php
file:
Usage
Since you've changed your browser class, you've gained access to two new Dusk browser methods: travelTo($time) and travelBack. As you can easily understand from the names, first travels through time, uses a Illuminate/Support/Carbon
instance as the time input, and second brings it back.
Note: As it's using cookies to deliver the modified time to the browser, only the next requests will be affected with the changed time, the current page won't be having the date modified.
For example:
Both of them will use tomorrows date as the next request (AJAX or Redirect, doesn't matter).
After you've recreated the instance, or manually reset the date back to current by using travelBack, the date server uses will revert to normal.
Testing
A test case is included, but since it's a Dusk extension, the tests are run on a Laravel instance having Dusk installed. You can test the plugin the same way .github/workflows/run-tests.yml
workflow does.
Changelog
Please see CHANGELOG for more information on what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Security Vulnerabilities
Please review our security policy on how to report security vulnerabilities.
Credits
- Taha Paksu
- All Contributors
License
The MIT License (MIT). Please see License File for more information.
All versions of dusk-time-travel with dependencies
illuminate/routing Version ^7.0|^8.0
illuminate/support Version ^7.0|^8.0
laravel/dusk Version ^6.0
symfony/http-foundation Version ^5.1.3