Skip to content

Commit 09ec00a

Browse files
authored
Merge pull request #136 from mozilla/as/blocking-tracking-content
As/ tracking content blocked/allowed status in custom mode
2 parents ab0f04b + 9149e88 commit 09ec00a

File tree

3 files changed

+85
-0
lines changed

3 files changed

+85
-0
lines changed

modules/data/about_prefs.components.json

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -270,6 +270,18 @@
270270
"groups": []
271271
},
272272

273+
"tracking-in-all-windows": {
274+
"selectorData": "menuitem[data-l10n-id='content-blocking-tracking-protection-option-all-windows']",
275+
"strategy": "css",
276+
"groups": []
277+
},
278+
279+
"cryptominers-checkbox": {
280+
"selectorData": "contentBlockingCryptominersCheckbox",
281+
"strategy": "id",
282+
"groups": []
283+
},
284+
273285
"known-fingerprints-checkbox": {
274286
"selectorData": "contentBlockingFingerprintersCheckbox",
275287
"strategy": "id",

modules/data/tracker_panel.components.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,12 @@
6363
]
6464
},
6565

66+
"tracking-subview": {
67+
"selectorData": "protections-popup-trackersView",
68+
"strategy": "id",
69+
"groups": []
70+
},
71+
6672
"social-media-tracker-content": {
6773
"selectorData": "protections-popup-category-socialblock",
6874
"strategy": "id",
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
from time import sleep
2+
3+
import pytest
4+
from selenium.webdriver import Firefox
5+
6+
from modules.browser_object_navigation import Navigation
7+
from modules.browser_object_tracker_panel import TrackerPanel
8+
from modules.page_object_about_prefs import AboutPrefs
9+
10+
Tracker_URL = "https://senglehardt.com/test/trackingprotection/test_pages/tracking_protection.html"
11+
12+
13+
@pytest.fixture()
14+
def add_prefs():
15+
return [
16+
("network.cookie.cookieBehavior", 0),
17+
("privacy.trackingprotection.pbmode.enabled", False),
18+
("privacy.trackingprotection.cryptomining.enabled", False),
19+
("privacy.trackingprotection.fingerprinting.enabled", False),
20+
("privacy.fingerprintingProtection.pbmode", False),
21+
]
22+
23+
24+
def test_blocked_tracking_content(driver: Firefox):
25+
"""
26+
C446405.1: Ensure that ETP Custom mode with option Tracking Content -> In all windows set blocks tracking content
27+
"""
28+
29+
nav = Navigation(driver)
30+
tracker_panel = TrackerPanel(driver)
31+
about_prefs = AboutPrefs(driver, category="privacy").open()
32+
about_prefs.get_element("tracking-checkbox").click()
33+
about_prefs.get_element("tracking-in-all-windows").click()
34+
sleep(2)
35+
36+
driver.get(Tracker_URL)
37+
nav.open_tracker_panel()
38+
39+
driver.set_context(driver.CONTEXT_CHROME)
40+
41+
tracker_panel.get_element("tracker-tracking-content").click()
42+
tracker_subview_title = tracker_panel.get_element("tracking-subview")
43+
assert tracker_subview_title.get_attribute("title") == "Tracking Content Blocked"
44+
45+
46+
def test_allowed_tracking_content(driver: Firefox):
47+
"""
48+
C446405.2: Ensure that ETP Custom mode with option Tracking Content -> Only in Private Windows set allows
49+
tracking content
50+
"""
51+
52+
nav = Navigation(driver)
53+
tracker_panel = TrackerPanel(driver)
54+
about_prefs = AboutPrefs(driver, category="privacy").open()
55+
about_prefs.get_element("tracking-checkbox").click()
56+
sleep(2)
57+
58+
driver.get(Tracker_URL)
59+
nav.open_tracker_panel()
60+
61+
driver.set_context(driver.CONTEXT_CHROME)
62+
63+
tracker_panel.get_element("tracker-tracking-content").click()
64+
tracker_subview_title = tracker_panel.get_element("tracking-subview")
65+
assert (
66+
tracker_subview_title.get_attribute("title") == "Not Blocking Tracking Content"
67+
)

0 commit comments

Comments
 (0)