/
PluginTest.php
66 lines (49 loc) · 1.99 KB
/
PluginTest.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<?php
namespace Oneup\FlysystemBundle\Tests;
use League\Flysystem\FilesystemInterface;
use League\Flysystem\PluginInterface;
use Oneup\FlysystemBundle\Tests\Model\ContainerAwareTestCase;
class PluginTest extends ContainerAwareTestCase
{
public function testIfSinglePluginIsAttached()
{
/** @var FilesystemInterface $filesystem */
$filesystem = self::$container->get('oneup_flysystem.myfilesystem_filesystem');
$refl = new \ReflectionObject($filesystem);
$property = $refl->getProperty('plugins');
$property->setAccessible(true);
$plugins = $property->getValue($filesystem);
$this->assertTrue(is_array($plugins));
foreach ($plugins as $plugin) {
$this->assertTrue($plugin instanceof PluginInterface);
}
}
public function testIfAllPluginsAreAttachedCorrectly()
{
/** @var FilesystemInterface $filesystem */
$filesystem = self::$container->get('oneup_flysystem.myfilesystem2_filesystem');
$refl = new \ReflectionObject($filesystem);
$property = $refl->getProperty('plugins');
$property->setAccessible(true);
$plugins = $property->getValue($filesystem);
$this->assertTrue(is_array($plugins));
$this->assertCount(2, $plugins);
foreach ($plugins as $plugin) {
$this->assertTrue($plugin instanceof PluginInterface);
}
}
public function testIfGlobalPluginIsAttached()
{
/** @var FilesystemInterface $filesystem */
$filesystem = self::$container->get('oneup_flysystem.myfilesystem3_filesystem');
$refl = new \ReflectionObject($filesystem);
$property = $refl->getProperty('plugins');
$property->setAccessible(true);
$plugins = $property->getValue($filesystem);
$this->assertTrue(is_array($plugins));
$this->assertCount(1, $plugins);
foreach ($plugins as $plugin) {
$this->assertTrue($plugin instanceof PluginInterface);
}
}
}