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 / integration / abilities / Test_Get_Status_Ability.php

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

130 lines 3.2 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * Tests for Get_Status_Ability.
4 *
5 * @package cookiebot
6 * @subpackage tests
7 */
8
9 namespace cybot\cookiebot\tests\integration\abilities;
10
11 use cybot\cookiebot\abilities\Get_Status_Ability;
12 use WP_UnitTestCase;
13
14 /**
15 * Test class for Get_Status_Ability.
16 *
17 * @since 4.8.0
18 */
19 class Test_Get_Status_Ability extends WP_UnitTestCase {
20
21 /**
22 * Set up test fixtures.
23 *
24 * @return void
25 */
26 public function set_up() {
27 parent::set_up();
28 update_option( 'cookiebot-cbid', 'aabbccdd-1111-2222-3333-aabbccddeeff' );
29 update_option( 'cookiebot-gcm', '1' );
30 update_option( 'cookiebot-cookie-blocking-mode', 'auto' );
31 update_option( 'cookiebot-banner-enabled', '1' );
32 }
33
34 /**
35 * Test get_name returns correct ability name.
36 *
37 * @return void
38 */
39 public function test_get_name() {
40 $this->assertSame( 'cookiebot/get-status', ( new Get_Status_Ability() )->get_name() );
41 }
42
43 /**
44 * Test output has all required keys.
45 *
46 * @return void
47 */
48 public function test_output_has_all_required_keys() {
49 $args = ( new Get_Status_Ability() )->get_args();
50 $result = call_user_func( $args['execute_callback'] );
51 foreach ( array( 'cbid_set', 'gcm_enabled', 'blocking_mode', 'banner_enabled', 'plugin_version' ) as $key ) {
52 $this->assertArrayHasKey( $key, $result );
53 }
54 }
55
56 /**
57 * Test cbid_set is true when configured.
58 *
59 * @return void
60 */
61 public function test_cbid_set_true_when_configured() {
62 $args = ( new Get_Status_Ability() )->get_args();
63 $result = call_user_func( $args['execute_callback'] );
64 $this->assertTrue( $result['cbid_set'] );
65 }
66
67 /**
68 * Test cbid_set is false when empty.
69 *
70 * @return void
71 */
72 public function test_cbid_set_false_when_empty() {
73 update_option( 'cookiebot-cbid', '' );
74 $args = ( new Get_Status_Ability() )->get_args();
75 $result = call_user_func( $args['execute_callback'] );
76 $this->assertFalse( $result['cbid_set'] );
77 }
78
79 /**
80 * Test gcm_enabled reflects option.
81 *
82 * @return void
83 */
84 public function test_gcm_enabled_reflects_option() {
85 $args = ( new Get_Status_Ability() )->get_args();
86 $result = call_user_func( $args['execute_callback'] );
87 $this->assertTrue( $result['gcm_enabled'] );
88
89 update_option( 'cookiebot-gcm', '0' );
90 $result = call_user_func( $args['execute_callback'] );
91 $this->assertFalse( $result['gcm_enabled'] );
92 }
93
94 /**
95 * Test blocking_mode reflects option.
96 *
97 * @return void
98 */
99 public function test_blocking_mode_reflects_option() {
100 $args = ( new Get_Status_Ability() )->get_args();
101 $result = call_user_func( $args['execute_callback'] );
102 $this->assertSame( 'auto', $result['blocking_mode'] );
103 }
104
105 /**
106 * Test banner_enabled reflects option.
107 *
108 * @return void
109 */
110 public function test_banner_enabled_reflects_option() {
111 $args = ( new Get_Status_Ability() )->get_args();
112 $result = call_user_func( $args['execute_callback'] );
113 $this->assertTrue( $result['banner_enabled'] );
114
115 update_option( 'cookiebot-banner-enabled', '0' );
116 $result = call_user_func( $args['execute_callback'] );
117 $this->assertFalse( $result['banner_enabled'] );
118 }
119
120 /**
121 * Test show_in_rest is true.
122 *
123 * @return void
124 */
125 public function test_show_in_rest_true() {
126 $args = ( new Get_Status_Ability() )->get_args();
127 $this->assertTrue( $args['meta']['show_in_rest'] );
128 }
129 }
130