driade/sleepery

sleep() 和 usleep() 的封装,以便更容易进行测试

1.0.2 2023-02-21 21:44 UTC

This package is auto-updated.

Last update: 2024-09-22 01:06:40 UTC


README

Packagist Tests Downloads

此包允许您轻松测试 sleep() 和 usleep() 函数,而无需“等待”。

安装

您可以通过 composer 安装此包

composer require driade/sleepery

用法

在您的代码中使用 sleep() 代替

Driade\Sleepery::dream(1);

和,在您的代码中使用 usleep() 代替

Driade\Sleepery::nap(1000);

在测试您的代码时,您可以使用“模拟”函数来记录 dream() 和 nap() 调用,这样您就可以稍后进行测试。

在您的测试中

use Driade\Sleepery;

Sleepery::fake();

(new PerformAction)->handle(); // execute your code

Sleepery::wakeup();

//

Sleepery::assertDreamt(1);
Sleepery::assertNapped(1000);

您还可以使用以下函数

Sleepery::assertNeverDreamt(); // no call to sleep() was made
Sleepery::assertNeverNapped(); // no call to usleep() was made
Sleepery::getDreams(); // returns all the dream() calls while dreaming
Sleepery::getNaps(); // returns all the nap() calls while dreaming
Sleepery::wakeup(); // stop dreaming

测试

composer test

贡献

如果您认为有什么可以改进的地方,请随时提交问题或拉取请求

致谢

许可证

MIT 许可证 (MIT)。请参阅许可证文件获取更多信息。