StandardTest::testGet()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 22
Code Lines 15

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 15
c 1
b 0
f 0
nc 1
nop 0
dl 0
loc 22
rs 9.7666
1
<?php
2
3
/**
4
 * @license LGPLv3, http://opensource.org/licenses/LGPL-3.0
5
 * @copyright Aimeos (aimeos.org), 2017-2025
6
 */
7
8
9
namespace Aimeos\Admin\JsonAdm\Coupon\Config;
10
11
12
class StandardTest extends \PHPUnit\Framework\TestCase
13
{
14
	private $context;
15
	private $object;
16
	private $view;
17
18
19
	protected function setUp() : void
20
	{
21
		$this->context = \TestHelper::context();
22
		$this->view = $this->context->view();
23
24
		$this->object = new \Aimeos\Admin\JsonAdm\Coupon\Config\Standard( $this->context, 'coupon/config' );
25
		$this->object->setAimeos( \TestHelper::getAimeos() );
26
		$this->object->setView( $this->view );
27
	}
28
29
30
	public function testGet()
31
	{
32
		$params = array(
33
			'id' => 'None,Required,Basket',
34
		);
35
		$helper = new \Aimeos\Base\View\Helper\Param\Standard( $this->view, $params );
36
		$this->view->addHelper( 'param', $helper );
37
38
		$response = $this->object->get( $this->view->request(), $this->view->response() );
39
		$result = json_decode( (string) $response->getBody(), true );
40
41
		$this->assertEquals( 200, $response->getStatusCode() );
42
		$this->assertEquals( 1, count( $response->getHeader( 'Content-Type' ) ) );
43
44
		$this->assertEquals( 4, $result['meta']['total'] );
45
		$this->assertIsArray( $result['data'] );
46
		$this->assertEquals( 'required.productcode', $result['data'][0]['id'] );
47
		$this->assertEquals( 'required.only', $result['data'][1]['id'] );
48
		$this->assertEquals( 'basket.total-value-min', $result['data'][2]['id'] );
49
		$this->assertEquals( 'basket.total-value-max', $result['data'][3]['id'] );
50
51
		$this->assertArrayNotHasKey( 'errors', $result );
52
	}
53
}
54