|
3 | 3 | namespace Rareloop\Lumberjack\Test; |
4 | 4 |
|
5 | 5 | use Mockery; |
| 6 | +use ReflectionClass; |
| 7 | +use org\bovigo\vfs\vfsStream; |
6 | 8 | use PHPUnit\Framework\TestCase; |
7 | | -use Rareloop\Lumberjack\Application; |
8 | 9 | use Rareloop\Lumberjack\Config; |
9 | | -use Rareloop\Lumberjack\Contracts\Encrypter as EncrypterContract; |
10 | 10 | use Rareloop\Lumberjack\Encrypter; |
| 11 | +use Rareloop\Lumberjack\Application; |
| 12 | +use Rareloop\Lumberjack\Session\Store; |
| 13 | +use Rareloop\Lumberjack\Exceptions\Handler; |
11 | 14 | use Rareloop\Lumberjack\Session\EncryptedStore; |
12 | | -use Rareloop\Lumberjack\Session\FileSessionHandler; |
13 | 15 | use Rareloop\Lumberjack\Session\SessionManager; |
14 | | -use Rareloop\Lumberjack\Session\Store; |
| 16 | +use Rareloop\Lumberjack\Session\FileSessionHandler; |
| 17 | +use Rareloop\Lumberjack\Exceptions\HandlerInterface; |
15 | 18 | use Rareloop\Lumberjack\Test\Unit\Session\NullSessionHandler; |
16 | | -use org\bovigo\vfs\vfsStream; |
| 19 | +use Rareloop\Lumberjack\Contracts\Encrypter as EncrypterContract; |
17 | 20 |
|
18 | 21 | class SessionManagerTest extends TestCase |
19 | 22 | { |
@@ -93,12 +96,22 @@ public function can_create_an_unencrypted_store() |
93 | 96 | /** @test */ |
94 | 97 | public function can_create_an_encrypted_store() |
95 | 98 | { |
96 | | - $app = $app = $this->appWithSessionDriverConfig('file', 'lumberjack', $encrypted = true); |
| 99 | + $app = $this->appWithSessionDriverConfig('file', 'lumberjack', $encrypted = true); |
97 | 100 | $app->bind(EncrypterContract::class, new Encrypter('encryption-key')); |
98 | 101 |
|
| 102 | + $handler = Mockery::mock(Handler::class); |
| 103 | + $app->bind(HandlerInterface::class, $handler); |
| 104 | + |
99 | 105 | $manager = new SessionManager($app); |
100 | 106 |
|
101 | | - $this->assertInstanceOf(EncryptedStore::class, $manager->driver()); |
| 107 | + $driver = $manager->driver(); |
| 108 | + $this->assertInstanceOf(EncryptedStore::class, $driver); |
| 109 | + |
| 110 | + $reflection = new ReflectionClass($driver); |
| 111 | + $property = $reflection->getProperty('exceptionHandler'); |
| 112 | + $property->setAccessible(true); |
| 113 | + |
| 114 | + $this->assertInstanceOf(HandlerInterface::class, $property->getValue($driver)); |
102 | 115 | } |
103 | 116 | } |
104 | 117 |
|
|
0 commit comments