Failed Conditions
Push — develop ( 88de64...8efa8b )
by Reüel
12:56
created

StatusesTest::transform_provider()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 19
Code Lines 13

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 13
nc 1
nop 0
dl 0
loc 19
rs 9.8333
c 0
b 0
f 0
1
<?php
2
/**
3
 * Status test
4
 *
5
 * @author    Pronamic <[email protected]>
6
 * @copyright 2005-2019 Pronamic
7
 * @license   GPL-3.0-or-later
8
 * @package   Pronamic\WordPress\Pay\Gateways\Buckaroo
9
 */
10
11
namespace Pronamic\WordPress\Pay\Gateways\Buckaroo;
12
13
use Pronamic\WordPress\Pay\Payments\PaymentStatus as Core_Statuses;
14
15
/**
16
 * Title: Buckaroo statuses constants tests
17
 * Description:
18
 * Copyright: 2005-2019 Pronamic
19
 * Company: Pronamic
20
 *
21
 * @author Remco Tolsma
22
 * @version 2.0.0
23
 * @link https://www.mollie.nl/support/documentatie/betaaldiensten/ideal/en/
24
 */
25
class StatusesTest extends \WP_UnitTestCase {
26
	/**
27
	 * Test transform.
28
	 *
29
	 * @param string $buckaroo_status Buckaroo status.
30
	 * @param string $expected        Expected status.
31
	 *
32
	 * @dataProvider transform_provider
33
	 */
34
	public function test_transform( $buckaroo_status, $expected ) {
35
		$status = Statuses::transform( $buckaroo_status );
36
37
		$this->assertEquals( $expected, $status );
38
	}
39
40
	/**
41
	 * Data provider for transform.
42
	 *
43
	 * @return array
44
	 */
45
	public function transform_provider() {
46
		return array(
47
			// Success.
48
			array( Statuses::PAYMENT_SUCCESS, Core_Statuses::SUCCESS ),
49
			// Failure.
50
			array( Statuses::PAYMENT_FAILURE, Core_Statuses::FAILURE ),
51
			array( Statuses::VALIDATION_FAILURE, Core_Statuses::FAILURE ),
52
			array( Statuses::TECHNICAL_ERROR, Core_Statuses::FAILURE ),
53
			array( Statuses::PAYMENT_REJECTED, Core_Statuses::FAILURE ),
54
			// Open.
55
			array( Statuses::WAITING_FOR_USER_INPUT, Core_Statuses::OPEN ),
56
			array( Statuses::WAITING_FOR_PROCESSOR, Core_Statuses::OPEN ),
57
			array( Statuses::WAITING_ON_CONSUMER_ACTION, Core_Statuses::OPEN ),
58
			array( Statuses::PAYMENT_ON_HOLD, Core_Statuses::OPEN ),
59
			// Cancelled.
60
			array( Statuses::CANCELLED_BY_CONSUMER, Core_Statuses::CANCELLED ),
61
			array( Statuses::CANCELLED_BY_MERCHANT, Core_Statuses::CANCELLED ),
62
			// Other.
63
			array( 'not existing status', null ),
64
		);
65
	}
66
}
67