Skip to content

Commit 5074ad4

Browse files
authored
Add Delay facade (#3)
* Add Delay facade
1 parent f57ac02 commit 5074ad4

File tree

5 files changed

+60
-1
lines changed

5 files changed

+60
-1
lines changed

README.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,16 @@ composer require newman/laravel-delay
1919

2020
## :book: Usage
2121

22+
### Using as Facade
23+
24+
```php
25+
use Newman\LaravelDelay\Facades\Delay;
26+
27+
// ...
28+
29+
Delay::for(3);
30+
```
31+
2232
### Using as Trait
2333

2434
```php

composer.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,10 @@
4848
"laravel": {
4949
"providers": [
5050
"Newman\\LaravelDelay\\DelayServiceProvider"
51-
]
51+
],
52+
"aliases": {
53+
"Delay": "Newman\\LaravelDelay\\Facades\\Delay"
54+
}
5255
}
5356
},
5457
"minimum-stability": "dev",

src/Facades/Delay.php

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
namespace Newman\LaravelDelay\Facades;
6+
7+
use Illuminate\Support\Facades\Facade;
8+
use Newman\LaravelDelay\Contracts\DelayContract;
9+
10+
/**
11+
* @mixin DelayContract
12+
*/
13+
class Delay extends Facade
14+
{
15+
protected static function getFacadeAccessor(): string
16+
{
17+
return DelayContract::class;
18+
}
19+
}

tests/FacadeTest.php

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
namespace Newman\LaravelDelay\Tests;
6+
7+
use Newman\LaravelDelay\DelayFake;
8+
use Newman\LaravelDelay\Facades\Delay;
9+
10+
class FacadeTest extends TestCase
11+
{
12+
public function test_it_sleeps_through_facade(): void
13+
{
14+
/** @var DelayFake $facade */
15+
$facade = Delay::for(3);
16+
17+
$facade->assertSleep()->assertSleepFor(3);
18+
}
19+
}

tests/TestCase.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
use Newman\LaravelDelay\Contracts\DelayContract;
88
use Newman\LaravelDelay\DelayFake;
99
use Newman\LaravelDelay\DelayServiceProvider;
10+
use Newman\LaravelDelay\Facades\Delay;
1011
use Orchestra\Testbench\TestCase as BaseTestCase;
1112

1213
abstract class TestCase extends BaseTestCase
@@ -24,4 +25,11 @@ protected function getPackageProviders($app): array
2425
DelayServiceProvider::class,
2526
];
2627
}
28+
29+
protected function getPackageAliases($app): array
30+
{
31+
return [
32+
'Delay' => Delay::class,
33+
];
34+
}
2735
}

0 commit comments

Comments
 (0)