SubscriptionTest   A
last analyzed

Complexity

Total Complexity 6

Size/Duplication

Total Lines 40
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 2

Importance

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

6 Methods

Rating   Name   Duplication   Size   Complexity  
A testSetAndGetSource() 0 5 1
A testWhenSubscriptionIsNew_isUnconfirmedReturnsTrue() 0 3 1
A testWhenConfirmed_isUnconfirmedReturnsFalse() 0 6 1
A testWhenPendingModeration_isUnconfirmedReturnsTrue() 0 6 1
A testWhenSubscriptionIsNew_needsModerationReturnsFalse() 0 5 1
A testWhenPendingModeration_needsModerationReturnsTrue() 0 6 1
1
<?php
2
3
declare( strict_types = 1 );
4
5
namespace WMDE\Fundraising\Store\Tests;
6
7
use PHPUnit\Framework\TestCase;
8
use WMDE\Fundraising\Entities\Subscription;
9
10
/**
11
 * @covers WMDE\Fundraising\Entities\Subscription
12
 *
13
 * @licence GNU GPL v2+
14
 * @author Gabriel Birke < [email protected] >
15
 * @author Jeroen De Dauw < [email protected] >
16
 */
17
class SubscriptionTest extends TestCase {
18
19
	public function testSetAndGetSource() {
20
		$subscription = new Subscription();
21
		$subscription->setSource( 'foobar' );
22
		$this->assertSame( 'foobar', $subscription->getSource() );
23
	}
24
25
	public function testWhenSubscriptionIsNew_isUnconfirmedReturnsTrue() {
26
		$this->assertTrue( ( new Subscription() )->isUnconfirmed() );
27
	}
28
29
	public function testWhenConfirmed_isUnconfirmedReturnsFalse() {
30
		$subscription = new Subscription();
31
		$subscription->markAsConfirmed();
32
33
		$this->assertFalse( $subscription->isUnconfirmed() );
34
	}
35
36
	public function testWhenPendingModeration_isUnconfirmedReturnsTrue() {
37
		$subscription = new Subscription();
38
		$subscription->markForModeration();
39
40
		$this->assertTrue( $subscription->isUnconfirmed() );
41
	}
42
43
	public function testWhenSubscriptionIsNew_needsModerationReturnsFalse() {
44
		$subscription = new Subscription();
45
46
		$this->assertFalse( $subscription->needsModeration() );
47
	}
48
49
	public function testWhenPendingModeration_needsModerationReturnsTrue() {
50
		$subscription = new Subscription();
51
		$subscription->markForModeration();
52
53
		$this->assertTrue( $subscription->needsModeration() );
54
	}
55
56
}
57