Passed
Push — master ( 54ca64...d44c58 )
by Aimeos
04:37
created

CacheTest::setUp()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 16
Code Lines 11

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 11
c 1
b 0
f 0
nc 1
nop 0
dl 0
loc 16
rs 9.9
1
<?php
2
3
/**
4
 * @license LGPLv3, http://opensource.org/licenses/LGPL-3.0
5
 * @copyright Aimeos (aimeos.org), 2020
6
 */
7
8
9
namespace Aimeos\Admin\JQAdm\Product\Supplier\Decorator;
10
11
12
class CacheTest extends \PHPUnit\Framework\TestCase
13
{
14
	private $context;
15
	private $object;
16
	private $mock;
17
	private $cache;
18
19
20
	protected function setUp() : void
21
	{
22
		$this->cache = $this->getMockBuilder( 'Aimeos\MW\Cache\None' )
23
			->setMethods( array( 'deleteByTags' ) )
24
			->disableOriginalConstructor()
25
			->getMock();
26
27
		$this->mock = $this->getMockBuilder( 'Aimeos\Admin\JQAdm\Product\Supplier\Standard' )
28
			->setMethods( array( 'save' ) )
29
			->disableOriginalConstructor()
30
			->getMock();
31
32
		$this->context = \TestHelperJqadm::getContext();
33
		$this->context->setCache( $this->cache );
34
35
		$this->object = new \Aimeos\Admin\JQAdm\Product\Supplier\Decorator\Cache( $this->mock, $this->context );
36
	}
37
38
39
	protected function tearDown() : void
40
	{
41
		unset( $this->object, $this->mock, $this->context, $this->cache );
42
	}
43
44
45
	public function testSave()
46
	{
47
		$view = \TestHelperJqadm::getView();
48
		$tags = array( 'supplier', 'supplier-1', 'supplier-2' );
49
50
		$param = ['site' => 'unittest', 'supplier' => [0 => ['supplier.id' => '1'], 1 => ['supplier.id' => '2']]];
51
		$helper = new \Aimeos\MW\View\Helper\Param\Standard( $view, $param );
52
		$view->addHelper( 'param', $helper );
53
54
		$this->cache->expects( $this->once() )->method( 'deleteByTags' )->with( $this->equalTo( $tags ) );
55
		$this->mock->expects( $this->once() )->method( 'save' )->will( $this->returnValue( 'test' ) );
56
57
		$this->object->setView( $view );
58
		$result = $this->object->save();
59
60
		$this->assertEquals( 'test', $result );
61
	}
62
}
63