Skip to content

Commit 18d5f23

Browse files
authored
Merge pull request #86 from mozilla/hy/sap_google_adclick
hy/test SAP google adclick
2 parents a2aaf79 + 812ecbb commit 18d5f23

File tree

4 files changed

+79
-0
lines changed

4 files changed

+79
-0
lines changed

modules/data/about_config.components.json

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,5 +11,17 @@
1111
"selectorData": "about-config-search",
1212
"strategy": "id",
1313
"groups": []
14+
},
15+
16+
"cell-edit": {
17+
"selectorData": "cell-edit",
18+
"strategy": "class",
19+
"groups": []
20+
},
21+
22+
"form-edit": {
23+
"selectorData": "//input[@aria-label='cookiebanners.service.mode']",
24+
"strategy": "xpath",
25+
"groups": []
1426
}
1527
}

modules/data/navigation.components.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -202,5 +202,11 @@
202202
"selectorData": "ul[class=\"context-menu-list\"]",
203203
"strategy": "css",
204204
"groups": []
205+
},
206+
207+
"search-result": {
208+
"selectorData": "//div[@data-text-ad]//a",
209+
"strategy": "xpath",
210+
"groups": []
205211
}
206212
}

modules/page_object_about_config.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,3 +38,15 @@ def toggle_true_false_config(self, term: str) -> BasePage:
3838
self.search_pref(term)
3939
self.toggle_true_false()
4040
return self
41+
42+
def change_pref_value(self, term: str, value) -> BasePage:
43+
self.set_content_context()
44+
self.driver.get("about:config")
45+
self.search_pref(term)
46+
pref_edit_button = self.get_element("cell-edit")
47+
pref_edit_button.click()
48+
pref_edit = self.get_element("form-edit")
49+
pref_edit.send_keys(value)
50+
pref_edit_button.click()
51+
return self
52+
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
import logging
2+
import time
3+
4+
import pytest
5+
from selenium.webdriver import Firefox
6+
7+
from modules.browser_object_navigation import Navigation
8+
from modules.page_object_about_config import AboutConfig
9+
10+
from modules.page_object_about_telemetry import AboutTelemetry
11+
from modules.util import Utilities
12+
13+
14+
@pytest.fixture()
15+
def add_prefs():
16+
return [
17+
("browser.search.region", "US"),
18+
]
19+
20+
21+
def test_sap_google_adclick(driver: Firefox):
22+
"""
23+
C1365108, Test SAP Google adclick - URL bar - US
24+
"""
25+
# instantiate objects
26+
nav = Navigation(driver).open()
27+
about_config = AboutConfig(driver)
28+
u = Utilities()
29+
30+
# change pref value in order to not display accept cookies banner
31+
about_config.change_pref_value("cookiebanners.service.mode", 1)
32+
33+
# search and click on an ad
34+
nav.search("iphone")
35+
nav.get_element("search-result").click()
36+
time.sleep(2)
37+
38+
# Click on Raw JSON, switch tab and click on Raw Data
39+
about_telemetry = AboutTelemetry(driver).open()
40+
time.sleep(2)
41+
about_telemetry.get_element("category-raw").click()
42+
about_telemetry.switch_tab()
43+
about_telemetry.get_element("rawdata-tab").click()
44+
45+
# Verify pings are recorded
46+
json_data = u.decode_url(driver)
47+
assert u.assert_json_value(
48+
json_data, '$..keyedScalars.["browser.search.adclicks.urlbar"].["google:tagged"]', 1
49+
)

0 commit comments

Comments
 (0)