VisitorTest   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 27
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
wmc 2
eloc 21
dl 0
loc 27
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A test_given_visitor_with_categories_then_correct_values_are_returned() 0 10 1
A test_given_visitor_without_categories_then_correct_values_are_returned() 0 8 1
1
<?php
2
3
declare( strict_types = 1 );
4
5
namespace WMDE\BannerServer\Tests\Unit\Entity;
6
7
use PHPUnit\Framework\Attributes\CoversClass;
0 ignored issues
show
Bug introduced by
The type PHPUnit\Framework\Attributes\CoversClass was not found. Maybe you did not declare it correctly or list all dependencies?

The issue could also be caused by a filter entry in the build configuration. If the path has been excluded in your configuration, e.g. excluded_paths: ["lib/*"], you can move it to the dependency path list as follows:

filter:
    dependency_paths: ["lib/*"]

For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths

Loading history...
8
use PHPUnit\Framework\TestCase;
9
use WMDE\BannerServer\Entity\Visitor;
10
11
#[CoversClass( Visitor::class )]
12
class VisitorTest extends TestCase {
13
14
	private const TEST_IMPRESSION_COUNT = 2;
15
	private const TEST_BUCKET = 'TEST_BUCKET123';
16
	private const TEST_DISPLAY_WIDTH = 500;
17
18
	public function test_given_visitor_without_categories_then_correct_values_are_returned(): void {
19
		$visitor = new Visitor(
20
			self::TEST_IMPRESSION_COUNT,
21
			self::TEST_BUCKET,
22
			self::TEST_DISPLAY_WIDTH );
23
		$this->assertEquals( self::TEST_IMPRESSION_COUNT, $visitor->getTotalImpressionCount() );
24
		$this->assertEquals( self::TEST_BUCKET, $visitor->getBucketIdentifier() );
25
		$this->assertFalse( $visitor->inCategory( 'default' ) );
26
	}
27
28
	public function test_given_visitor_with_categories_then_correct_values_are_returned(): void {
29
		$visitor = new Visitor(
30
			self::TEST_IMPRESSION_COUNT,
31
			self::TEST_BUCKET,
32
			self::TEST_DISPLAY_WIDTH,
33
			'default',
34
			'fundraising_2020' );
35
		$this->assertTrue( $visitor->inCategory( 'default' ) );
36
		$this->assertTrue( $visitor->inCategory( 'fundraising_2020' ) );
37
		$this->assertFalse( $visitor->inCategory( 'dummy_category' ) );
38
	}
39
}
40