@@ -30,7 +30,7 @@ protected static function setup_extensions()
3030 return $ extensions ;
3131 }
3232
33- public function test_consentmanager_defers_google_analytics_scripts ()
33+ public function test_consentmanager_enables_google_consent_mode ()
3434 {
3535 if (!self ::is_consentmanager_available ())
3636 {
@@ -53,12 +53,17 @@ public function test_consentmanager_defers_google_analytics_scripts()
5353
5454 self ::assertSame (
5555 'https://www.googletagmanager.com/gtag/js?id= ' . $ this ->sample_ga_code ,
56- $ crawler ->filter ('head > script[type="text/plain"][data-consent-category="analytics"][src*="googletagmanager.com/gtag/js"] ' )->attr ('src ' )
57- );
58- self ::assertGreaterThan (
59- 0 ,
60- $ crawler ->filter ('head > script[type="text/plain"][data-consent-category="analytics"] ' )->count ()
56+ $ crawler ->filter ('head > script[src*="googletagmanager.com/gtag/js"] ' )->attr ('src ' )
6157 );
58+
59+ $ head = $ crawler ->filter ('head ' )->html ();
60+ self ::assertStringContainsString ("gtag('consent', 'default' " , $ head );
61+ self ::assertStringContainsString ("'analytics_storage': 'denied' " , $ head );
62+ self ::assertStringContainsString ("window.consentManager.onChange(updateConsent) " , $ head );
63+ self ::assertStringContainsString ("window.consentManager.hasConsent('analytics') ? 'granted' : 'denied' " , $ head );
64+ self ::assertStringNotContainsString ("'ad_storage' " , $ head );
65+ self ::assertStringNotContainsString ("'ad_user_data' " , $ head );
66+ self ::assertStringNotContainsString ("'ad_personalization' " , $ head );
6267 }
6368
6469 public function test_google_analytics_runs_normally_when_analytics_category_is_disabled ()
@@ -94,10 +99,7 @@ public function test_google_analytics_runs_normally_when_analytics_category_is_d
9499 'https://www.googletagmanager.com/gtag/js?id= ' . $ this ->sample_ga_code ,
95100 $ crawler ->filter ('head > script[src*="googletagmanager.com/gtag/js"] ' )->attr ('src ' )
96101 );
97- self ::assertSame (
98- 0 ,
99- $ crawler ->filter ('head > script[type="text/plain"][data-consent-category="analytics"] ' )->count ()
100- );
102+ self ::assertStringNotContainsString ("gtag('consent', 'default' " , $ crawler ->filter ('head ' )->html ());
101103 }
102104
103105 protected static function is_consentmanager_available ()
0 commit comments