Passed
Push — main ( 061772...28b955 )
by Remco
07:49 queued 12s
created

TransactionTest   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 23
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 2

Importance

Changes 0
Metric Value
dl 0
loc 23
rs 10
c 0
b 0
f 0
wmc 1
lcom 1
cbo 2

1 Method

Rating   Name   Duplication   Size   Complexity  
A test() 0 18 1
1
<?php
2
/**
3
 * Transaction Test
4
 *
5
 * @author    Pronamic <[email protected]>
6
 * @copyright 2005-2020 Pronamic
7
 * @license   GPL-3.0-or-later
8
 * @package   Pronamic\WordPress\Pay\Gateways\Payvision
9
 */
10
11
namespace Pronamic\WordPress\Pay\Gateways\Payvision;
12
13
/**
14
 * Transaction Test
15
 *
16
 * @author  Remco Tolsma
17
 * @version 1.0.0
18
 * @since   1.0.0
19
 */
20
class TransactionTest extends \WP_UnitTestCase {
21
	/**
22
	 * Test.
23
	 */
24
	public function test() {
25
		$transaction = new Transaction( '123456', 50, 'EUR', '12345678' );
0 ignored issues
show
Documentation introduced by
'12345678' is of type string, but the function expects a object<Pronamic\WordPres...Payvision\TrackingCode>.

It seems like the type of the argument is not accepted by the function/method which you are calling.

In some cases, in particular if PHP’s automatic type-juggling kicks in this might be fine. In other cases, however this might be a bug.

We suggest to add an explicit type cast like in the following example:

function acceptsInteger($int) { }

$x = '123'; // string "123"

// Instead of
acceptsInteger($x);

// we recommend to use
acceptsInteger((integer) $x);
Loading history...
26
27
		$transaction->set_brand_id( BrandId::IDEAL );
28
		$transaction->set_purchase_id( 123456 );
29
		$transaction->set_return_url( 'https://example.com/' );
30
31
		$this->assertInstanceOf( Transaction::class, $transaction );
32
33
		$this->assertEquals( BrandId::IDEAL, $transaction->get_brand_id() );
34
35
		// JSON.
36
		$json_file = __DIR__ . '/../json/transaction-request.json';
37
38
		$json_string = \wp_json_encode( $transaction, \JSON_PRETTY_PRINT );
39
40
		$this->assertJsonStringEqualsJsonFile( $json_file, $json_string );
41
	}
42
}
43