Passed
Push — master ( d7c3ec...93a960 )
by Aimeos
03:37
created

testAddControllerDecoratorsInvalidDomain()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 6
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Importance

Changes 2
Bugs 0 Features 0
Metric Value
cc 1
eloc 3
c 2
b 0
f 0
nc 1
nop 0
dl 0
loc 6
rs 10
1
<?php
2
3
/**
4
 * @license LGPLv3, https://opensource.org/licenses/LGPL-3.0
5
 * @copyright Metaways Infosystems GmbH, 2013
6
 * @copyright Aimeos (aimeos.org), 2015-2022
7
 */
8
9
10
namespace Aimeos\Controller\Jobs\Common\Factory;
11
12
13
class BaseTest extends \PHPUnit\Framework\TestCase
14
{
15
	private $context;
16
	private $aimeos;
17
18
19
	protected function setUp() : void
20
	{
21
		$this->aimeos = \TestHelperJobs::getAimeos();
22
		$this->context = \TestHelperJobs::context();
23
		$config = $this->context->config();
24
25
		$config->set( 'controller/jobs/common/decorators/default', [] );
26
		$config->set( 'controller/jobs/admin/decorators/global', [] );
27
		$config->set( 'controller/jobs/admin/decorators/local', [] );
28
	}
29
30
31
	public function testInjectController()
32
	{
33
		$cntl = $this->getMockBuilder( \Aimeos\Controller\Jobs\Iface::class )->getMock();
34
		TestAbstract::injectController( 'Test', $cntl );
35
	}
36
37
38
	public function testAddDecoratorsInvalidName()
39
	{
40
		$decorators = array( '$' );
41
		$cntl = $this->getMockBuilder( \Aimeos\Controller\Jobs\Iface::class )->getMock();
42
43
		$this->expectException( \Aimeos\Controller\Jobs\Exception::class );
44
		\Aimeos\Controller\Jobs\Common\Factory\TestAbstract::addDecoratorsPublic( $this->context, $this->aimeos, $cntl, $decorators, 'Test_' );
45
	}
46
47
48
	public function testAddDecoratorsInvalidClass()
49
	{
50
		$decorators = array( 'Test' );
51
		$cntl = $this->getMockBuilder( \Aimeos\Controller\Jobs\Iface::class )->getMock();
52
53
		$this->expectException( \Aimeos\Controller\Jobs\Exception::class );
54
		\Aimeos\Controller\Jobs\Common\Factory\TestAbstract::addDecoratorsPublic( $this->context, $this->aimeos, $cntl, $decorators, 'TestDecorator' );
55
	}
56
57
58
	public function testAddDecoratorsInvalidInterface()
59
	{
60
		$decorators = array( 'Test' );
61
		$cntl = $this->getMockBuilder( \Aimeos\Controller\Jobs\Iface::class )->getMock();
62
63
		$this->expectException( \Aimeos\Controller\Jobs\Exception::class );
64
		\Aimeos\Controller\Jobs\Common\Factory\TestAbstract::addDecoratorsPublic( $this->context, $this->aimeos, $cntl,
65
			$decorators, '\Aimeos\Controller\Jobs\Common\Decorator\\' );
66
	}
67
68
69
	public function testAddControllerDecoratorsInvalidDomain()
70
	{
71
		$cntl = $this->getMockBuilder( \Aimeos\Controller\Jobs\Iface::class )->getMock();
72
73
		$this->expectException( \Aimeos\Controller\Jobs\Exception::class );
74
		\Aimeos\Controller\Jobs\Common\Factory\TestAbstract::addControllerDecoratorsPublic( $this->context, $this->aimeos, $cntl, '' );
75
	}
76
}
77
78
79
class TestAbstract
80
	extends \Aimeos\Controller\Jobs\Common\Factory\Base
81
{
82
	public static function addDecoratorsPublic( \Aimeos\MShop\Context\Item\Iface $context, \Aimeos\Bootstrap $aimeos,
83
		\Aimeos\Controller\Jobs\Iface $controller, array $decorators, $classprefix )
84
	{
85
		self::addDecorators( $context, $aimeos, $controller, $decorators, $classprefix );
86
	}
87
88
	public static function addControllerDecoratorsPublic( \Aimeos\MShop\Context\Item\Iface $context, \Aimeos\Bootstrap $aimeos,
89
		\Aimeos\Controller\Jobs\Iface $controller, $domain )
90
	{
91
		self::addControllerDecorators( $context, $aimeos, $controller, $domain );
92
	}
93
}
94
95
96
class TestDecorator
97
{
98
}
99