PluginProbe
Cookiebot by Usercentrics – Automatic Cookie Banner for GDPR/CCPA & Google Consent Mode / 4.7.1
Cookiebot by Usercentrics – Automatic Cookie Banner for GDPR/CCPA & Google Consent Mode v4.7.1
4.7.4 4.7.5 4.7.3 4.7.2 4.7.1 trunk 2.3.0 2.4.0 2.4.1 2.4.2 2.5.0 3.0.0 3.0.1 3.1.0 3.10.0 3.10.1 3.11.1 3.11.2 3.11.3 3.2.0 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 All 95 releases
cookiebot / tests / unit / Test_Cookie_Consent.php

Test_Cookie_Consent.php in Cookiebot by Usercentrics – Automatic Cookie Banner for GDPR/CCPA & Google Consent Mode 4.7.1, at tests/unit/Test_Cookie_Consent.php

66 lines 2.0 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace cybot\cookiebot\tests\unit;
4
5 use cybot\cookiebot\lib\Cookie_Consent;
6 use PHPUnit\Framework\ExpectationFailedException;
7 use SebastianBergmann\RecursionContext\InvalidArgumentException;
8 use WP_UnitTestCase;
9
10 class Test_Cookie_Consent extends WP_UnitTestCase {
11 const COOKIE = '{"stamp":"0boMmPgsG8gUTRvMkOLtyZ1uLvOFJobBbNb23IZO/TpY3eETvRxFfg==","necessary":"true","preferences":"true","statistics":"false","marketing":"false","ver":"1","utc":"1557479161596"}';
12
13 /**
14 * Test Cookie Consent with valid encoded json format
15 *
16 * @throws ExpectationFailedException
17 * @throws InvalidArgumentException
18 */
19 public function test_scan_cookie_with_encoded_json_format() {
20 $cookie_consent = new Cookie_Consent( self::COOKIE );
21
22 $this->assertEquals( array( 'necessary', 'preferences' ), $cookie_consent->get_cookie_states() );
23 }
24
25 /**
26 * Test Cookie Consent with unchecked status
27 * Only necessary type should be allowed
28 *
29 * @throws ExpectationFailedException
30 * @throws InvalidArgumentException
31 */
32 public function test_scan_cookie_with_zero_value() {
33 $cookie_consent = new Cookie_Consent( 0 );
34
35 $this->assertEquals( array( 'necessary' ), $cookie_consent->get_cookie_states() );
36 }
37
38 /**
39 * Test Cookie Consent with every type checked
40 *
41 * @throws ExpectationFailedException
42 * @throws InvalidArgumentException
43 */
44 public function test_scan_cookie_everything_checked() {
45 $cookie_consent = new Cookie_Consent( - 1 );
46
47 $this->assertEquals(
48 array( 'necessary', 'preferences', 'statistics', 'marketing' ),
49 $cookie_consent->get_cookie_states()
50 );
51 }
52
53 /**
54 * Test Cookie Consent with invalid encoded json format
55 * Should return only necessary type
56 *
57 * @throws ExpectationFailedException
58 * @throws InvalidArgumentException
59 */
60 public function test_scan_cookie_with_wrong_encoded_json_format() {
61 $cookie_consent = new Cookie_Consent( '{"test":"test"}' );
62
63 $this->assertEquals( array( 'necessary' ), $cookie_consent->get_cookie_states() );
64 }
65 }
66