diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-06-12 05:43:14 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-06-12 05:43:14 +0000 |
commit | 8dd16259287f58f9273002717ec4d27e97127719 (patch) | |
tree | 3863e62a53829a84037444beab3abd4ed9dfc7d0 /mobile/android/fenix/app/src/androidTest | |
parent | Releasing progress-linux version 126.0.1-1~progress7.99u1. (diff) | |
download | firefox-8dd16259287f58f9273002717ec4d27e97127719.tar.xz firefox-8dd16259287f58f9273002717ec4d27e97127719.zip |
Merging upstream version 127.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'mobile/android/fenix/app/src/androidTest')
43 files changed, 441 insertions, 447 deletions
diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/addressForm.html b/mobile/android/fenix/app/src/androidTest/assets/pages/addressForm.html index 0ca8bf3bf5..a09fab9788 100644 --- a/mobile/android/fenix/app/src/androidTest/assets/pages/addressForm.html +++ b/mobile/android/fenix/app/src/androidTest/assets/pages/addressForm.html @@ -1,17 +1,17 @@ <html> -<head> - <meta name="viewport" content="width=device-width"> + <head> + <meta name="viewport" content="width=device-width" /> <title>Address_Form</title> -</head> -<body> + </head> + <body> <form> - <p>Street Address: <input id="streetAddress" type="text"></p> - <p>City: <input id="city" type="text"></p> - <p>Zip Code: <input id="zipCode" type="text"></p> - <p>Country: <input id="country" type="text"></p> - <p>Telephone: <input id="telephone" type="text"></p> - <p>Email: <input id="email" type="text"></p> - <p>Apartment, suite, etc. <input id="apartment" type="text"></p> + <p>Street Address: <input id="streetAddress" type="text" /></p> + <p>City: <input id="city" type="text" /></p> + <p>Zip Code: <input id="zipCode" type="text" /></p> + <p>Country: <input id="country" type="text" /></p> + <p>Telephone: <input id="telephone" type="text" /></p> + <p>Email: <input id="email" type="text" /></p> + <p>Apartment, suite, etc. <input id="apartment" type="text" /></p> </form> -</body> + </body> </html> diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/audioMediaPage.html b/mobile/android/fenix/app/src/androidTest/assets/pages/audioMediaPage.html index 4d82abb822..94393e6bdb 100644 --- a/mobile/android/fenix/app/src/androidTest/assets/pages/audioMediaPage.html +++ b/mobile/android/fenix/app/src/androidTest/assets/pages/audioMediaPage.html @@ -1,13 +1,13 @@ <html> -<head> + <head> <title>Audio_Test_Page</title> -</head> -<body> -<p id="testContent">Page content: audio player</p> -<div class="audioPlayer"> - <audio id="audioSample" controls loop> - <source src="../resources/audioSample.mp3"> - </audio> -</div> -</body> + </head> + <body> + <p id="testContent">Page content: audio player</p> + <div class="audioPlayer"> + <audio id="audioSample" controls loop> + <source src="../resources/audioSample.mp3" /> + </audio> + </div> + </body> </html> diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/creditCardForm.html b/mobile/android/fenix/app/src/androidTest/assets/pages/creditCardForm.html index 7b77e92872..57ede7ddf8 100644 --- a/mobile/android/fenix/app/src/androidTest/assets/pages/creditCardForm.html +++ b/mobile/android/fenix/app/src/androidTest/assets/pages/creditCardForm.html @@ -1,17 +1,31 @@ <html> -<head> - <meta name="viewport" content="width=device-width"> + <head> + <meta name="viewport" content="width=device-width" /> <title>Credit_Card_Form</title> -</head> -<body> + </head> + <body> <form> - <p>Card information</p> - <p>Card Number: <input id="cardNumber" type="text" placeholder="1234 1234 1234 1234"></p> - <p>Name on card: <input id="nameOnCard"type="text" placeholder="Name on card"></p> - <p> Expiry date: - <input id="expiryMonthAndYear" inputmode="numerical" placeholder="MM / YYYY" type="text" /> - </p> - <p><input type="submit" id="submit" value="Submit" aria-label="submit"/></p> + <p>Card information</p> + <p> + Card Number: + <input id="cardNumber" type="text" placeholder="1234 1234 1234 1234" /> + </p> + <p> + Name on card: + <input id="nameOnCard" type="text" placeholder="Name on card" /> + </p> + <p> + Expiry date: + <input + id="expiryMonthAndYear" + inputmode="numerical" + placeholder="MM / YYYY" + type="text" + /> + </p> + <p> + <input type="submit" id="submit" value="Submit" aria-label="submit" /> + </p> </form> -</body> + </body> </html> diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/cross-site-cookies.html b/mobile/android/fenix/app/src/androidTest/assets/pages/cross-site-cookies.html index 8b81b3b3f4..1dc01c669a 100644 --- a/mobile/android/fenix/app/src/androidTest/assets/pages/cross-site-cookies.html +++ b/mobile/android/fenix/app/src/androidTest/assets/pages/cross-site-cookies.html @@ -1,15 +1,19 @@ <html> -<!-- This Source Code Form is subject to the terms of the Mozilla Public + <!-- This Source Code Form is subject to the terms of the Mozilla Public - License, v. 2.0. If a copy of the MPL was not distributed with this - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> -<!-- This asset is using the code behind + <!-- This asset is using the code behind - https://www.mozilla-anti-tracking.com/test/dfpi/storage_access_api.html - test page. - Source repository: https://github.com/mozilla/anti-tracking-test-pages --> -<body> -<h2>Cross-site cookies storage access test</h2> -<h3>anti-tracker-test.com</h3> -<h4>different site, cross-origin iframe</h4> -<iframe width=500 height=1000 src="https://mozilla-mobile.github.io/testapp/anti-tracker-test_set_storage_with_sa_api.html"></iframe> -</body> + <body> + <h2>Cross-site cookies storage access test</h2> + <h3>anti-tracker-test.com</h3> + <h4>different site, cross-origin iframe</h4> + <iframe + width="500" + height="1000" + src="https://mozilla-mobile.github.io/testapp/anti-tracker-test_set_storage_with_sa_api.html" + ></iframe> + </body> </html> diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/externalLinks.html b/mobile/android/fenix/app/src/androidTest/assets/pages/externalLinks.html index 755d15ac84..88652d283f 100644 --- a/mobile/android/fenix/app/src/androidTest/assets/pages/externalLinks.html +++ b/mobile/android/fenix/app/src/androidTest/assets/pages/externalLinks.html @@ -1,29 +1,31 @@ <!DOCTYPE html> <html> -<head> + <head> <title>Html_Control_Form</title> - <meta charset="utf-8"> - <meta name="viewport" content="width=device-width"> -</head> + <meta charset="utf-8" /> + <meta name="viewport" content="width=device-width" /> + </head> -<p>Misc Link Types</p> -<section> + <p>Misc Link Types</p> + <section> <a href="mailto://example@example.com">Email link</a> -</section> + </section> -<section> + <section> <a href="tel://1234567890">Telephone link</a> -</section> + </section> -<section> + <section> <a href="vnd.youtube://@Mozilla">Youtube schema link</a> -</section> + </section> -<section> + <section> <a href="https://m.youtube.com/user/mozilla?cbrd=1">Youtube full link</a> -</section> + </section> -<section> - <a href="http://play.google.com/store/apps/details?id=org.mozilla.firefox">Playstore link</a> -</section> + <section> + <a href="http://play.google.com/store/apps/details?id=org.mozilla.firefox" + >Playstore link</a + > + </section> </html> diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/generic1.html b/mobile/android/fenix/app/src/androidTest/assets/pages/generic1.html index 4aa0dfb819..b4b8d9f159 100644 --- a/mobile/android/fenix/app/src/androidTest/assets/pages/generic1.html +++ b/mobile/android/fenix/app/src/androidTest/assets/pages/generic1.html @@ -1,10 +1,10 @@ <html> -<head> + <head> <title>Test_Page_1</title> -</head> -<body> -<h1> - <p id="testContent">Page content: 1</p> -</h1> -</body> + </head> + <body> + <h1> + <p id="testContent">Page content: 1</p> + </h1> + </body> </html> diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/generic2.html b/mobile/android/fenix/app/src/androidTest/assets/pages/generic2.html index 39a7220f53..8cf29b5c18 100644 --- a/mobile/android/fenix/app/src/androidTest/assets/pages/generic2.html +++ b/mobile/android/fenix/app/src/androidTest/assets/pages/generic2.html @@ -1,10 +1,10 @@ <html> -<head> + <head> <title>Test_Page_2</title> -</head> -<body> -<h1> - <p id="testContent">Page content: 2</p> -</h1> -</body> + </head> + <body> + <h1> + <p id="testContent">Page content: 2</p> + </h1> + </body> </html> diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/generic3.html b/mobile/android/fenix/app/src/androidTest/assets/pages/generic3.html index 2f033ec8dc..ff9c4032f2 100644 --- a/mobile/android/fenix/app/src/androidTest/assets/pages/generic3.html +++ b/mobile/android/fenix/app/src/androidTest/assets/pages/generic3.html @@ -1,16 +1,19 @@ <html> -<head> + <head> <title>Test_Page_3</title> -</head> -<body> -<h1> - <p id="testContent">Page content: 3</p> - <p> - <a href="https://play.google.com/store/apps/details?id=org.mozilla.fenix">Mozilla Playstore link</a> - </p> - <p> + </head> + <body> + <h1> + <p id="testContent">Page content: 3</p> + <p> + <a + href="https://play.google.com/store/apps/details?id=org.mozilla.fenix" + >Mozilla Playstore link</a + > + </p> + <p> <a href="../resources/pdfForm.pdf">PDF form file</a> - </p> -</h1> -</body> + </p> + </h1> + </body> </html> diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/generic4.html b/mobile/android/fenix/app/src/androidTest/assets/pages/generic4.html index 368cfb9270..18a8a7a629 100644 --- a/mobile/android/fenix/app/src/androidTest/assets/pages/generic4.html +++ b/mobile/android/fenix/app/src/androidTest/assets/pages/generic4.html @@ -1,20 +1,20 @@ <html> -<head> + <head> <meta name="viewport" content="width=device-width" /> <title>Test_Page_4</title> -</head> -<body> + </head> + <body> <p id="testContent">Page content: 4</p> <a href="generic1.html">Link 1</a> <a href="generic2.html">Link 2</a> <a href="generic3.html">Link 3</a> <p> - <a href="../resources/rabbit.jpg"> - <img src="../resources/rabbit.jpg" alt="test_link_image"> - </a> + <a href="../resources/rabbit.jpg"> + <img src="../resources/rabbit.jpg" alt="test_link_image" /> + </a> </p> <p> - <img src="../resources/rabbit.jpg" alt="test_no_link_image"> + <img src="../resources/rabbit.jpg" alt="test_no_link_image" /> </p> -</body> + </body> </html> diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/global_privacy_control.html b/mobile/android/fenix/app/src/androidTest/assets/pages/global_privacy_control.html index e08df8c17f..d8961ebc0a 100644 --- a/mobile/android/fenix/app/src/androidTest/assets/pages/global_privacy_control.html +++ b/mobile/android/fenix/app/src/androidTest/assets/pages/global_privacy_control.html @@ -1,15 +1,14 @@ <!DOCTYPE html> <html> -<meta name="viewport" content="width=device-width"> -<body> -<script type = "text/javascript" > - const gpcValue = navigator.globalPrivacyControl - if (gpcValue) { - document.write('<p>GPC is enabled.</p>'); - } else { - document.write('<p>GPC not enabled.</p>'); - } -</script> - -</body> + <meta name="viewport" content="width=device-width" /> + <body> + <script type="text/javascript"> + const gpcValue = navigator.globalPrivacyControl; + if (gpcValue) { + document.write("<p>GPC is enabled.</p>"); + } else { + document.write("<p>GPC not enabled.</p>"); + } + </script> + </body> </html> diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/lorem-ipsum.html b/mobile/android/fenix/app/src/androidTest/assets/pages/lorem-ipsum.html index ca519d6176..8fac0ecf68 100644 --- a/mobile/android/fenix/app/src/androidTest/assets/pages/lorem-ipsum.html +++ b/mobile/android/fenix/app/src/androidTest/assets/pages/lorem-ipsum.html @@ -1,36 +1,36 @@ <!DOCTYPE html> <html lang="en"> + <head> + <meta charset="utf-8" /> + <title> + Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy + eirmod tempor invidunt + </title> + <meta content="width=device-width, initial-scale=1" name="viewport" /> + </head> -<head> - <meta charset="utf-8"/> - <title>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy - eirmod tempor invidunt</title> - <meta content="width=device-width, initial-scale=1" - name="viewport"/> -</head> + <body> + <p id="testContent">Page content: lorem ipsum</p> -<body> - -<p id="testContent">Page content: lorem ipsum</p> - -<h1>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt</h1> - -<p> - Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy - eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam - voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet - clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit - amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam - nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, - sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. - Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor - sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed - diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, - sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. - Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor - sit amet. -</p> - -</body> + <h1> + Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy + eirmod tempor invidunt + </h1> + <p> + Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy + eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam + voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet + clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit + amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam + nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed + diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. + Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor + sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed + diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam + erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea + rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum + dolor sit amet. + </p> + </body> </html> diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/mutedVideoPage.html b/mobile/android/fenix/app/src/androidTest/assets/pages/mutedVideoPage.html index 51f93c7e78..6963088be5 100644 --- a/mobile/android/fenix/app/src/androidTest/assets/pages/mutedVideoPage.html +++ b/mobile/android/fenix/app/src/androidTest/assets/pages/mutedVideoPage.html @@ -1,49 +1,51 @@ -<!DOCTYPE HTML> +<!DOCTYPE html> <!-- This Source Code Form is subject to the terms of the Mozilla Public - License, v. 2.0. If a copy of the MPL was not distributed with this - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> <html> -<head> + <head> <title>Muted_Video_Test_Page</title> -</head> -<body> -<p id="testContent">Page content: muted video player</p> -<div class="playbackState"> - <p>Media file not playing</p> -</div> -<div id="video-container" style="text-align:center"> - <button onclick="play()">Play</button> - <button onclick="pause()">Pause</button> - <button onclick="fullscreen()">Full Screen</button> - <br><br> - <video id="mutedVideo" width="420" autoplay muted controls loop> - <source src="../resources/clip.mp4" type="video/mp4"> + </head> + <body> + <p id="testContent">Page content: muted video player</p> + <div class="playbackState"> + <p>Media file not playing</p> + </div> + <div id="video-container" style="text-align: center"> + <button onclick="play()">Play</button> + <button onclick="pause()">Pause</button> + <button onclick="fullscreen()">Full Screen</button> + <br /><br /> + <video id="mutedVideo" width="420" autoplay muted controls loop> + <source src="../resources/clip.mp4" type="video/mp4" /> Your browser does not support HTML video. - </video> -</div> + </video> + </div> -<script> - const mutedVideo = document.getElementById("mutedVideo"); + <script> + const mutedVideo = document.getElementById("mutedVideo"); - function play() { + function play() { mutedVideo.play(); - } + } - function pause() { + function pause() { mutedVideo.pause(); - } + } - function fullscreen() { + function fullscreen() { mutedVideo.requestFullscreen(); - } + } - mutedVideo.addEventListener('playing', (event) => { - document.querySelector('.playbackState').innerHTML="Media file is playing"; - }); + mutedVideo.addEventListener("playing", event => { + document.querySelector(".playbackState").innerHTML = + "Media file is playing"; + }); - mutedVideo.addEventListener('pause', (event) => { - document.querySelector('.playbackState').innerHTML="Media file is paused"; - }); -</script> -</body> + mutedVideo.addEventListener("pause", event => { + document.querySelector(".playbackState").innerHTML = + "Media file is paused"; + }); + </script> + </body> </html> diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/password.html b/mobile/android/fenix/app/src/androidTest/assets/pages/password.html index f906d33707..0faf69511f 100644 --- a/mobile/android/fenix/app/src/androidTest/assets/pages/password.html +++ b/mobile/android/fenix/app/src/androidTest/assets/pages/password.html @@ -1,22 +1,23 @@ - <html> + <head> + <meta name="viewport" content="width=device-width" /> + </head> -<head> -<meta name="viewport" content="width=device-width"> -</head> - -<body aria-label="body"> - -<form method="GET" action="passwordsubmit.html"> -<p>Username: <input id="username" type="text" value="test@example.com"></p> -<p>Password: <input id="password" type="password" value="verysecret"></p> -<p><input type="submit" id="submit" value="Login" aria-label="submit"/></p> -</form> - -</body> - -<script> -document.getElementById("password").value = Math.random().toString(); -</script> + <body aria-label="body"> + <form method="GET" action="passwordsubmit.html"> + <p> + Username: <input id="username" type="text" value="test@example.com" /> + </p> + <p> + Password: <input id="password" type="password" value="verysecret" /> + </p> + <p> + <input type="submit" id="submit" value="Login" aria-label="submit" /> + </p> + </form> + </body> + <script> + document.getElementById("password").value = Math.random().toString(); + </script> </html> diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/passwordsubmit.html b/mobile/android/fenix/app/src/androidTest/assets/pages/passwordsubmit.html index 5f55881be2..e3cdfdf9eb 100644 --- a/mobile/android/fenix/app/src/androidTest/assets/pages/passwordsubmit.html +++ b/mobile/android/fenix/app/src/androidTest/assets/pages/passwordsubmit.html @@ -1,8 +1,8 @@ <html> -<head> -<meta name="viewport" content="width=device-width"> -</head> -<body aria-label="body"> -<p>Password submitted. Nope just a test.</p> -</body> + <head> + <meta name="viewport" content="width=device-width" /> + </head> + <body aria-label="body"> + <p>Password submitted. Nope just a test.</p> + </body> </html> diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/refresh.html b/mobile/android/fenix/app/src/androidTest/assets/pages/refresh.html index 1b8ff6fe9c..1951f917bb 100644 --- a/mobile/android/fenix/app/src/androidTest/assets/pages/refresh.html +++ b/mobile/android/fenix/app/src/androidTest/assets/pages/refresh.html @@ -1,44 +1,41 @@ - <html> -<script> - - function setCookie(newVal){ - window.document.cookie = "pageStatus = " + newVal + ";"; + <script> + function setCookie(newVal) { + window.document.cookie = "pageStatus = " + newVal + ";"; } - function readCookie(name) { - var nameEQ = name + "="; - var ca = document.cookie.split(';'); - for(var i=0;i < ca.length;i++) { - var c = ca[i]; - while (c.charAt(0)==' ') c = c.substring(1,c.length); - if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); - } - return null; + var nameEQ = name + "="; + var ca = document.cookie.split(";"); + for (var i = 0; i < ca.length; i++) { + var c = ca[i]; + while (c.charAt(0) == " ") c = c.substring(1, c.length); + if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length); + } + return null; } - function valSwap(){ - currentCookie = readCookie("pageStatus"); - if(currentCookie == null) { - setCookie("DEFAULT"); - } + function valSwap() { + currentCookie = readCookie("pageStatus"); + if (currentCookie == null) { + setCookie("DEFAULT"); + } - if (currentCookie.localeCompare("REFRESHED") == 0) { - setCookie("DEFAULT"); - return "DEFAULT"; - } else { - setCookie("REFRESHED"); - return "REFRESHED"; - } + if (currentCookie.localeCompare("REFRESHED") == 0) { + setCookie("DEFAULT"); + return "DEFAULT"; + } else { + setCookie("REFRESHED"); + return "REFRESHED"; + } } var textToShow = valSwap(); - window.addEventListener('DOMContentLoaded', (event) => { - document.querySelector('h1').innerHTML = textToShow; + window.addEventListener("DOMContentLoaded", event => { + document.querySelector("h1").innerHTML = textToShow; }); -</script> -<body> -<h1>DEFAULT</h1> -</body> + </script> + <body> + <h1>DEFAULT</h1> + </body> </html> diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/storage_check.html b/mobile/android/fenix/app/src/androidTest/assets/pages/storage_check.html index 23d030a4f7..79731be911 100644 --- a/mobile/android/fenix/app/src/androidTest/assets/pages/storage_check.html +++ b/mobile/android/fenix/app/src/androidTest/assets/pages/storage_check.html @@ -1,23 +1,21 @@ <!DOCTYPE html> <html> -<meta name="viewport" content="width=device-width"> -<body> + <meta name="viewport" content="width=device-width" /> + <body> + <h1>Storage check</h1> -<h1>Storage check</h1> + <script type="text/javascript"> + if (sessionStorage.getItem("sessionTest") == "session storage") { + document.write("<p>Session storage has value</p>"); + } else { + document.write("<p>Session storage empty</p>"); + } -<script type="text/javascript"> - if (sessionStorage.getItem('sessionTest') == 'session storage') { - document.write('<p>Session storage has value</p>'); - } else { - document.write('<p>Session storage empty</p>'); - } - - if (localStorage.getItem('localTest') == 'local storage') { - document.write('<p>Local storage has value</p>'); - } else { - document.write('<p>Local storage empty</p>'); - } -</script> - -</body> + if (localStorage.getItem("localTest") == "local storage") { + document.write("<p>Local storage has value</p>"); + } else { + document.write("<p>Local storage empty</p>"); + } + </script> + </body> </html> diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/storage_write.html b/mobile/android/fenix/app/src/androidTest/assets/pages/storage_write.html index a10b469462..e90ebed9e0 100644 --- a/mobile/android/fenix/app/src/androidTest/assets/pages/storage_write.html +++ b/mobile/android/fenix/app/src/androidTest/assets/pages/storage_write.html @@ -1,28 +1,30 @@ <!DOCTYPE html> <html> -<meta name="viewport" content="width=device-width"> -<body> + <meta name="viewport" content="width=device-width" /> + <body> + <h1>Storage Write</h1> -<h1>Storage Write</h1> + <p id="cookies"></p> + <button id="setCookies">Set cookies</button> -<p id="cookies"></p> -<button id="setCookies">Set cookies</button> + <script type="text/javascript"> + (function () { + document.getElementById("cookies").textContent = document.cookie + ? document.cookie + : "No cookies set"; + })(); -<script type="text/javascript"> - (function() { - document.getElementById("cookies").textContent = document.cookie?document.cookie:"No cookies set"; - })(); + document + .getElementById("setCookies") + .addEventListener("click", function () { + document.cookie = "user=android"; + document.getElementById("cookies").textContent = document.cookie; + }); - document.getElementById("setCookies").addEventListener("click", function() { - document.cookie = "user=android"; - document.getElementById("cookies").textContent = document.cookie; - }); + sessionStorage.setItem("sessionTest", "session storage"); + localStorage.setItem("localTest", "local storage"); - sessionStorage.setItem('sessionTest', 'session storage'); - localStorage.setItem('localTest', 'local storage'); - - document.write('<p>Values written to storage</p>'); -</script> - -</body> + document.write("<p>Values written to storage</p>"); + </script> + </body> </html> diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/videoMediaPage.html b/mobile/android/fenix/app/src/androidTest/assets/pages/videoMediaPage.html index 50af35c170..3245cb5fa2 100644 --- a/mobile/android/fenix/app/src/androidTest/assets/pages/videoMediaPage.html +++ b/mobile/android/fenix/app/src/androidTest/assets/pages/videoMediaPage.html @@ -1,49 +1,51 @@ -<!DOCTYPE HTML> +<!DOCTYPE html> <!-- This Source Code Form is subject to the terms of the Mozilla Public - License, v. 2.0. If a copy of the MPL was not distributed with this - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> <html> -<head> + <head> <title>Video_Test_Page</title> -</head> -<body> -<p id="testContent">Page content: video player</p> -<div class="playbackState"> - <p>Media file not playing</p> -</div> -<div id="video-container" style="text-align:center"> - <button onclick="play()">Play</button> - <button onclick="pause()">Pause</button> - <button onclick="fullscreen()">Full Screen</button> - <br><br> - <video id="video" width="420" autoplay controls loop> - <source src="../resources/clip.mp4" type="video/mp4"> + </head> + <body> + <p id="testContent">Page content: video player</p> + <div class="playbackState"> + <p>Media file not playing</p> + </div> + <div id="video-container" style="text-align: center"> + <button onclick="play()">Play</button> + <button onclick="pause()">Pause</button> + <button onclick="fullscreen()">Full Screen</button> + <br /><br /> + <video id="video" width="420" autoplay controls loop> + <source src="../resources/clip.mp4" type="video/mp4" /> Your browser does not support HTML video. - </video> -</div> + </video> + </div> -<script> - const video = document.getElementById("video"); + <script> + const video = document.getElementById("video"); - function play() { + function play() { video.play(); - } + } - function pause() { + function pause() { video.pause(); - } + } - function fullscreen() { + function fullscreen() { video.requestFullscreen(); - } + } - video.addEventListener('playing', (event) => { - document.querySelector('.playbackState').innerHTML="Media file is playing"; - }); + video.addEventListener("playing", event => { + document.querySelector(".playbackState").innerHTML = + "Media file is playing"; + }); - video.addEventListener('pause', (event) => { - document.querySelector('.playbackState').innerHTML="Media file is paused"; - }); -</script> -</body> + video.addEventListener("pause", event => { + document.querySelector(".playbackState").innerHTML = + "Media file is paused"; + }); + </script> + </body> </html> diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/helpers/AppAndSystemHelper.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/helpers/AppAndSystemHelper.kt index ac40972db6..fb8fe67616 100644 --- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/helpers/AppAndSystemHelper.kt +++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/helpers/AppAndSystemHelper.kt @@ -46,6 +46,7 @@ import org.mozilla.fenix.customtabs.ExternalAppBrowserActivity import org.mozilla.fenix.helpers.Constants.PackageName.PIXEL_LAUNCHER import org.mozilla.fenix.helpers.Constants.PackageName.YOUTUBE_APP import org.mozilla.fenix.helpers.Constants.TAG +import org.mozilla.fenix.helpers.MatcherHelper.itemWithResIdContainingText import org.mozilla.fenix.helpers.TestAssetHelper.waitingTime import org.mozilla.fenix.helpers.TestAssetHelper.waitingTimeShort import org.mozilla.fenix.helpers.TestHelper.appContext @@ -586,4 +587,13 @@ object AppAndSystemHelper { e.printStackTrace() } } + + fun dismissSetAsDefaultBrowserOnboardingDialog() { + Log.i(TAG, "dismissSetAsDefaultBrowserOnboardingDialog: Detected API ${Build.VERSION.SDK_INT}") + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { + Log.i(TAG, "dismissSetAsDefaulltBrowserOnboardingDialog: Trying to click the \"Cancel\" dialog button.") + itemWithResIdContainingText("android:id/button2", "Cancel").click() + Log.i(TAG, "dismissSetAsDefaulltBrowserOnboardingDialog: Clicked the \"Cancel\" dialog button.") + } + } } diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_bookmark.js b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_bookmark.js index e1210bd24e..766a033b3a 100644 --- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_bookmark.js +++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_bookmark.js @@ -8,19 +8,17 @@ */ EnableEngines(["bookmarks"]); -var phases = { "phase1": "profile1" }; - +var phases = { phase1: "profile1" }; // expected bookmark state var bookmarksCreated = { -"mobile": [{ - uri: "http://www.example.com/", - title: "Example Domain"}] + mobile: [ + { + uri: "http://www.example.com/", + title: "Example Domain", + }, + ], }; // sync and verify bookmarks -Phase("phase1", [ - [Sync], - [Bookmarks.add, bookmarksCreated], - [Sync] -]);
\ No newline at end of file +Phase("phase1", [[Sync], [Bookmarks.add, bookmarksCreated], [Sync]]); diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_bookmark_desktop.js b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_bookmark_desktop.js index a6a42aa6d0..69489f84a7 100644 --- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_bookmark_desktop.js +++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_bookmark_desktop.js @@ -8,18 +8,17 @@ */ EnableEngines(["bookmarks"]); -var phases = { "phase1": "profile1" }; - +var phases = { phase1: "profile1" }; // expected bookmark state var bookmarksExpected = { -"mobile": [{ - uri: "http://www.example.com/", - title: "Example Domain"}] + mobile: [ + { + uri: "http://www.example.com/", + title: "Example Domain", + }, + ], }; // sync and verify bookmarks -Phase("phase1", [ - [Sync], - [Bookmarks.verify, bookmarksExpected], -]); +Phase("phase1", [[Sync], [Bookmarks.verify, bookmarksExpected]]); diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_history.js b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_history.js index 8b915945e2..9aa96f4aef 100644 --- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_history.js +++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_history.js @@ -8,26 +8,18 @@ */ EnableEngines(["history"]); -var phases = { "phase1": "profile1" }; - +var phases = { phase1: "profile1" }; // expected history state var historyCreated = [ - { uri: "http://www.example.com/", - visits: [ - { type: 1 , - date: 0 - }, - { type: 2, - date: -1 - } - ] - } + { + uri: "http://www.example.com/", + visits: [ + { type: 1, date: 0 }, + { type: 2, date: -1 }, + ], + }, ]; // sync and verify history -Phase("phase1", [ - [Sync], - [History.add, historyCreated], - [Sync] -]); +Phase("phase1", [[Sync], [History.add, historyCreated], [Sync]]); diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_history_desktop.js b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_history_desktop.js index 5dfdd1aa47..7cf2acaccb 100644 --- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_history_desktop.js +++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_history_desktop.js @@ -8,21 +8,12 @@ */ EnableEngines(["history"]); -var phases = { "phase1": "profile1" }; - +var phases = { phase1: "profile1" }; // expected history state var historyExpected = [ - { uri: "http://www.example.com/", - visits: [ - { type: 1 }, - { type: 2 } - ] - } + { uri: "http://www.example.com/", visits: [{ type: 1 }, { type: 2 }] }, ]; // sync and verify history -Phase("phase1", [ - [Sync], - [History.verify, historyExpected] -]); +Phase("phase1", [[Sync], [History.verify, historyExpected]]); diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_logins.js b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_logins.js index 16eb4bcf34..bc1d1e1071 100644 --- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_logins.js +++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_logins.js @@ -8,11 +8,11 @@ */ EnableEngines(["passwords"]); -var phases = { "phase1": "profile1" }; - +var phases = { phase1: "profile1" }; // expected tabs state -var password_list = [{ +var password_list = [ + { hostname: "https://accounts.google.com", submitURL: "https://accounts.google.com/signin/challenge/sl/password", realm: null, @@ -20,11 +20,8 @@ var password_list = [{ password: "test15mz", usernameField: "Email", passwordField: "Passwd", - }]; + }, +]; // sync and verify tabs -Phase("phase1", [ - [Sync], - [Passwords.add, password_list], - [Sync] -]);
\ No newline at end of file +Phase("phase1", [[Sync], [Passwords.add, password_list], [Sync]]); diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/BookmarksTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/BookmarksTest.kt index 96ca6ad724..d575521a5d 100644 --- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/BookmarksTest.kt +++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/BookmarksTest.kt @@ -9,7 +9,6 @@ import androidx.test.espresso.Espresso.openActionBarOverflowOrOptionsMenu import androidx.test.espresso.Espresso.pressBack import androidx.test.platform.app.InstrumentationRegistry.getInstrumentation import kotlinx.coroutines.runBlocking -import org.junit.Ignore import org.junit.Rule import org.junit.Test import org.mozilla.fenix.R @@ -237,7 +236,6 @@ class BookmarksTest : TestSetup() { } // TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/1919261 - @Ignore("Failing, see: https://bugzilla.mozilla.org/show_bug.cgi?id=1807268") @Test fun verifyOpenAllInNewTabsOptionTest() { val webPages = listOf( @@ -261,11 +259,6 @@ class BookmarksTest : TestSetup() { createBookmark(webPages[1].url, "root") createBookmark(webPages[2].url, "root") createBookmark(webPages[3].url, "sub") - }.openTabDrawer { - closeTab() - } - - browserScreen { }.openThreeDotMenu { }.openBookmarks { }.openThreeDotMenu("root") { @@ -281,7 +274,6 @@ class BookmarksTest : TestSetup() { } // TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/1919262 - @Ignore("Failing, see: https://bugzilla.mozilla.org/show_bug.cgi?id=1807268") @Test fun verifyOpenAllInPrivateTabsTest() { val webPages = listOf( @@ -301,11 +293,6 @@ class BookmarksTest : TestSetup() { browserScreen { createBookmark(webPages[0].url, "root") createBookmark(webPages[1].url, "sub") - }.openTabDrawer { - closeTab() - } - - browserScreen { }.openThreeDotMenu { }.openBookmarks { }.openThreeDotMenu("root") { diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeBookmarksTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeBookmarksTest.kt index 398533830a..995e43f794 100644 --- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeBookmarksTest.kt +++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeBookmarksTest.kt @@ -233,11 +233,6 @@ class ComposeBookmarksTest : TestSetup() { createBookmark(webPages[1].url, "root") createBookmark(webPages[2].url, "root") createBookmark(webPages[3].url, "sub") - }.openComposeTabDrawer(activityTestRule) { - closeTab() - } - - browserScreen { }.openThreeDotMenu { }.openBookmarks { }.openThreeDotMenu("root") { @@ -272,11 +267,6 @@ class ComposeBookmarksTest : TestSetup() { browserScreen { createBookmark(webPages[0].url, "root") createBookmark(webPages[1].url, "sub") - }.openComposeTabDrawer(activityTestRule) { - closeTab() - } - - browserScreen { }.openThreeDotMenu { }.openBookmarks { }.openThreeDotMenu("root") { diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeCrashReportingTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeCrashReportingTest.kt index e815972900..979824f2f8 100644 --- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeCrashReportingTest.kt +++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeCrashReportingTest.kt @@ -5,7 +5,6 @@ package org.mozilla.fenix.ui import androidx.compose.ui.test.junit4.AndroidComposeTestRule -import org.junit.Ignore import org.junit.Rule import org.junit.Test import org.mozilla.fenix.R @@ -48,7 +47,6 @@ class ComposeCrashReportingTest : TestSetup() { } // TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/2336134 - @Ignore("Test failure caused by: https://github.com/mozilla-mobile/fenix/issues/19964") @Test fun restoreTabFromTabCrashedReporterTest() { val website = TestAssetHelper.getGenericAsset(mockWebServer, 1) diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeHistoryTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeHistoryTest.kt index d3b17f57d9..2268825d3a 100644 --- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeHistoryTest.kt +++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeHistoryTest.kt @@ -7,7 +7,6 @@ package org.mozilla.fenix.ui import androidx.compose.ui.test.junit4.AndroidComposeTestRule import androidx.test.espresso.Espresso.openActionBarOverflowOrOptionsMenu import androidx.test.espresso.Espresso.pressBack -import org.junit.Ignore import org.junit.Rule import org.junit.Test import org.mozilla.fenix.R @@ -155,7 +154,6 @@ class ComposeHistoryTest : TestSetup() { } // TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/339696 - @Ignore("Failing, see: https://bugzilla.mozilla.org/show_bug.cgi?id=1807268") @Test fun openMultipleSelectedHistoryItemsInANewTabTest() { val firstWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1) diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeSearchTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeSearchTest.kt index eaa76b1481..30f1ea8dc5 100644 --- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeSearchTest.kt +++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeSearchTest.kt @@ -55,7 +55,7 @@ class ComposeSearchTest : TestSetup() { private lateinit var searchMockServer: MockWebServer private val queryString: String = "firefox" private val generalEnginesList = listOf("DuckDuckGo", "Google", "Bing") - private val topicEnginesList = listOf("Amazon.com", "Wikipedia", "eBay") + private val topicEnginesList = listOf("Wikipedia", "eBay") @get:Rule val activityTestRule = AndroidComposeTestRule( @@ -111,7 +111,7 @@ class ComposeSearchTest : TestSetup() { verifySearchToolbar(isDisplayed = true) clickSearchSelectorButton() verifySearchShortcutListContains( - "DuckDuckGo", "Google", "Amazon.com", "Wikipedia", "Bing", "eBay", + "DuckDuckGo", "Google", "Wikipedia", "Bing", "eBay", "Bookmarks", "Tabs", "History", "Search settings", ) } @@ -153,7 +153,7 @@ class ComposeSearchTest : TestSetup() { // TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/2154196 @Test fun verifySearchPlaceholderForTopicSpecificSearchEnginesTest() { - val topicEnginesList = listOf("Amazon.com", "Wikipedia", "eBay") + val topicEnginesList = listOf("Wikipedia", "eBay") topicEnginesList.forEach { homeScreen { @@ -229,7 +229,7 @@ class ComposeSearchTest : TestSetup() { @SmokeTest @Test fun searchEnginesCanBeChangedTemporarilyFromSearchSelectorMenuTest() { - val enginesList = listOf("DuckDuckGo", "Google", "Amazon.com", "Wikipedia", "Bing", "eBay") + val enginesList = listOf("DuckDuckGo", "Google", "Wikipedia", "Bing", "eBay") enginesList.forEach { homeScreen { @@ -303,13 +303,12 @@ class ComposeSearchTest : TestSetup() { } // TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/1592229 - @Ignore("Test run timing out: https://github.com/mozilla-mobile/fenix/issues/27704") @Test fun verifyAPageIsAddedToASearchGroupOnlyOnceTest() { val firstPageUrl = TestAssetHelper.getGenericAsset(searchMockServer, 1).url val secondPageUrl = TestAssetHelper.getGenericAsset(searchMockServer, 2).url val originPageUrl = - "http://localhost:${searchMockServer.port}/pages/searchResults.html?search=test%20search".toUri() + "http://localhost:${searchMockServer.port}/pages/searchResults.html?search=firefox".toUri() val searchEngineName = "TestSearchEngine" // setting our custom mockWebServer search URL setCustomSearchEngine(searchMockServer, searchEngineName) diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/CrashReportingTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/CrashReportingTest.kt index be99ebe8af..224de9a675 100644 --- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/CrashReportingTest.kt +++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/CrashReportingTest.kt @@ -5,7 +5,6 @@ package org.mozilla.fenix.ui import androidx.compose.ui.test.junit4.AndroidComposeTestRule -import org.junit.Ignore import org.junit.Rule import org.junit.Test import org.mozilla.fenix.R @@ -47,7 +46,6 @@ class CrashReportingTest : TestSetup() { } // TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/2336134 - @Ignore("Test failure caused by: https://github.com/mozilla-mobile/fenix/issues/19964") @Test fun restoreTabFromTabCrashedReporterTest() { val website = TestAssetHelper.getGenericAsset(mockWebServer, 1) diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/FirefoxSuggestTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/FirefoxSuggestTest.kt index 2e881e16fe..938c13d857 100644 --- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/FirefoxSuggestTest.kt +++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/FirefoxSuggestTest.kt @@ -51,7 +51,7 @@ class FirefoxSuggestTest : TestSetup() { ), "Houzz" to listOf( "Houzz.com - Official Site", - "houzz.com/products?m_refid=us-dsp-mpl-admp-219577_15416306_kwd-353208810&adcid=319104989&mfadid=adm&utm_source=admarketplace&utm_medium=cpc&utm_campaign=Privacy&utm_term=houzz&utm_content=319104989us1287${getSponsoredFxSuggestPlaceHolder()}", + "houzz.com/products?m_refid=us-dsp-mpl-admp-219577_15416306_kwd-353208810&adcid=319104989us1287${getSponsoredFxSuggestPlaceHolder()}&utm_source=admarketplace&utm_medium=cpc&utm_campaign=Privacy&utm_term=houzz&utm_content=319104989&mfadid=adm", ), "Spanx" to listOf( "SPANX® - Official Site", diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/LoginsTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/LoginsTest.kt index 317aa9c397..b551ec831a 100644 --- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/LoginsTest.kt +++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/LoginsTest.kt @@ -8,7 +8,6 @@ import android.os.Build import android.view.autofill.AutofillManager import androidx.core.net.toUri import org.junit.Before -import org.junit.Ignore import org.junit.Rule import org.junit.Test import org.mozilla.fenix.customannotations.SmokeTest @@ -538,7 +537,6 @@ class LoginsTest : TestSetup() { } // TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/593768 - @Ignore("Failing, see: https://bugzilla.mozilla.org/show_bug.cgi?id=1812995") @Test fun doNotSaveOptionWillNotUpdateALoginTest() { val loginPage = "https://mozilla-mobile.github.io/testapp/v2.0/loginForm.html" @@ -547,19 +545,18 @@ class LoginsTest : TestSetup() { navigationToolbar { }.enterURLAndEnterToBrowser(loginPage.toUri()) { setPageObjectText(itemWithResId("username"), "mozilla") + waitForAppWindowToBeUpdated() setPageObjectText(itemWithResId("password"), "firefox") + waitForAppWindowToBeUpdated() clickPageObject(itemWithResId("submit")) verifySaveLoginPromptIsDisplayed() clickPageObject(itemWithText("Save")) - }.openTabDrawer { - closeTab() - } - - navigationToolbar { - }.enterURLAndEnterToBrowser(loginPage.toUri()) { + waitForAppWindowToBeUpdated() clickPageObject(itemWithResId("togglePassword")) setPageObjectText(itemWithResId("username"), "mozilla") + waitForAppWindowToBeUpdated() setPageObjectText(itemWithResId("password"), "fenix") + waitForAppWindowToBeUpdated() clickPageObject(itemWithResId("submit")) verifySaveLoginPromptIsDisplayed() clickPageObject(itemWithText("Don’t update")) diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/NimbusMessagingHomescreenTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/NimbusMessagingHomescreenTest.kt index 95ced206a2..cad28b1878 100644 --- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/NimbusMessagingHomescreenTest.kt +++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/NimbusMessagingHomescreenTest.kt @@ -84,7 +84,7 @@ class NimbusMessagingHomescreenTest : TestSetup() { HomeScreenSection.POCKET to false, HomeScreenSection.POCKET_SPONSORED_STORIES to false, HomeScreenSection.RECENT_EXPLORATIONS to false, - HomeScreenSection.RECENTLY_SAVED to false, + HomeScreenSection.BOOKMARKS to false, HomeScreenSection.TOP_SITES to false, ), ) diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/OnboardingTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/OnboardingTest.kt index 4eead4f63c..d2da41ca11 100644 --- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/OnboardingTest.kt +++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/OnboardingTest.kt @@ -1,9 +1,12 @@ package org.mozilla.fenix.ui +import android.os.Build import androidx.compose.ui.test.junit4.AndroidComposeTestRule import org.junit.Rule import org.junit.Test import org.mozilla.fenix.customannotations.SmokeTest +import org.mozilla.fenix.helpers.AppAndSystemHelper.dismissSetAsDefaultBrowserOnboardingDialog +import org.mozilla.fenix.helpers.AppAndSystemHelper.runWithCondition import org.mozilla.fenix.helpers.AppAndSystemHelper.runWithLauncherIntent import org.mozilla.fenix.helpers.HomeActivityIntentTestRule import org.mozilla.fenix.helpers.TestSetup @@ -20,9 +23,13 @@ class OnboardingTest : TestSetup() { // TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/2122321 @Test fun verifyFirstOnboardingCardItemsTest() { - runWithLauncherIntent(activityTestRule) { - homeScreen { - verifyFirstOnboardingCard(activityTestRule) + // Run UI test only on devices with Android version lower than 10 + // because on Android 10 and above, the default browser dialog is shown and the first onboarding card is skipped + runWithCondition(Build.VERSION.SDK_INT < Build.VERSION_CODES.Q) { + runWithLauncherIntent(activityTestRule) { + homeScreen { + verifyFirstOnboardingCard(activityTestRule) + } } } } @@ -31,15 +38,19 @@ class OnboardingTest : TestSetup() { @SmokeTest @Test fun verifyFirstOnboardingCardItemsFunctionalityTest() { - runWithLauncherIntent(activityTestRule) { - homeScreen { - clickDefaultCardNotNowOnboardingButton(activityTestRule) - verifySecondOnboardingCard(activityTestRule) - swipeSecondOnboardingCardToRight() - }.clickSetAsDefaultBrowserOnboardingButton(activityTestRule) { - verifyAndroidDefaultAppsMenuAppears() - }.goBackToOnboardingScreen { - verifySecondOnboardingCard(activityTestRule) + // Run UI test only on devices with Android version lower than 10 + // because on Android 10 and above, the default browser dialog is shown and the first onboarding card is skipped + runWithCondition(Build.VERSION.SDK_INT < Build.VERSION_CODES.Q) { + runWithLauncherIntent(activityTestRule) { + homeScreen { + clickDefaultCardNotNowOnboardingButton(activityTestRule) + verifySecondOnboardingCard(activityTestRule) + swipeSecondOnboardingCardToRight() + }.clickSetAsDefaultBrowserOnboardingButton(activityTestRule) { + verifyAndroidDefaultAppsMenuAppears() + }.goBackToOnboardingScreen { + verifySecondOnboardingCard(activityTestRule) + } } } } @@ -49,7 +60,12 @@ class OnboardingTest : TestSetup() { fun verifySecondOnboardingCardItemsTest() { runWithLauncherIntent(activityTestRule) { homeScreen { - clickDefaultCardNotNowOnboardingButton(activityTestRule) + // Check if the device is running on Android version lower than 10 + if (Build.VERSION.SDK_INT < Build.VERSION_CODES.Q) { + // If true, click the "Not Now" button from the first onboarding card + clickDefaultCardNotNowOnboardingButton(activityTestRule) + } + dismissSetAsDefaultBrowserOnboardingDialog() verifySecondOnboardingCard(activityTestRule) } } @@ -61,7 +77,12 @@ class OnboardingTest : TestSetup() { fun verifyThirdOnboardingCardSignInFunctionalityTest() { runWithLauncherIntent(activityTestRule) { homeScreen { - clickDefaultCardNotNowOnboardingButton(activityTestRule) + // Check if the device is running on Android version lower than 10 + if (Build.VERSION.SDK_INT < Build.VERSION_CODES.Q) { + // If true, click the "Not Now" button from the first onboarding card + clickDefaultCardNotNowOnboardingButton(activityTestRule) + } + dismissSetAsDefaultBrowserOnboardingDialog() verifySecondOnboardingCard(activityTestRule) clickAddSearchWidgetNotNowOnboardingButton(activityTestRule) verifyThirdOnboardingCard(activityTestRule) diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/PocketTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/PocketTest.kt index 674924c954..e5d52152e3 100644 --- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/PocketTest.kt +++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/PocketTest.kt @@ -2,6 +2,7 @@ package org.mozilla.fenix.ui import androidx.compose.ui.test.junit4.AndroidComposeTestRule import org.junit.Before +import org.junit.Ignore import org.junit.Rule import org.junit.Test import org.mozilla.fenix.helpers.Constants @@ -63,6 +64,7 @@ class PocketTest : TestSetup() { } // TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/2252513 + @Ignore("Bug 1868291 - Intermittent failure in org.mozilla.fenix.ui.PocketTest.openPocketStoryItemTest") @Test fun openPocketStoryItemTest() { activityTestRule.activityRule.applySettingsExceptions { diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SearchTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SearchTest.kt index ede7b06b5d..6d2202c3ba 100644 --- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SearchTest.kt +++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SearchTest.kt @@ -68,7 +68,7 @@ class SearchTest : TestSetup() { private lateinit var searchMockServer: MockWebServer private var queryString = "firefox" private val generalEnginesList = listOf("DuckDuckGo", "Google", "Bing") - private val topicEnginesList = listOf("Amazon.com", "Wikipedia", "eBay") + private val topicEnginesList = listOf("Wikipedia", "eBay") @get:Rule val activityTestRule = AndroidComposeTestRule( @@ -123,7 +123,7 @@ class SearchTest : TestSetup() { verifySearchToolbar(isDisplayed = true) clickSearchSelectorButton() verifySearchShortcutListContains( - "DuckDuckGo", "Google", "Amazon.com", "Wikipedia", "Bing", "eBay", + "DuckDuckGo", "Google", "Wikipedia", "Bing", "eBay", "Bookmarks", "Tabs", "History", "Search settings", ) } @@ -165,7 +165,7 @@ class SearchTest : TestSetup() { // TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/2154196 @Test fun verifySearchPlaceholderForTopicSpecificSearchEnginesTest() { - val topicEnginesList = listOf("Amazon.com", "Wikipedia", "eBay") + val topicEnginesList = listOf("Wikipedia", "eBay") topicEnginesList.forEach { homeScreen { @@ -241,7 +241,7 @@ class SearchTest : TestSetup() { @SmokeTest @Test fun searchEnginesCanBeChangedTemporarilyFromSearchSelectorMenuTest() { - val enginesList = listOf("DuckDuckGo", "Google", "Amazon.com", "Wikipedia", "Bing", "eBay") + val enginesList = listOf("DuckDuckGo", "Google", "Wikipedia", "Bing", "eBay") enginesList.forEach { homeScreen { @@ -802,7 +802,6 @@ class SearchTest : TestSetup() { verifySearchShortcutListContains( "Google", "Bing", - "Amazon.com", "DuckDuckGo", "ويكيبيديا (ar)", ) diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsAboutTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsAboutTest.kt index 3e37fb5e3b..1144deb9c1 100644 --- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsAboutTest.kt +++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsAboutTest.kt @@ -21,7 +21,7 @@ import org.mozilla.fenix.ui.robots.homeScreen class SettingsAboutTest : TestSetup() { @get:Rule - val activityIntentTestRule = HomeActivityIntentTestRule() + val activityIntentTestRule = HomeActivityIntentTestRule.withDefaultSettingsOverrides() @Rule @JvmField @@ -61,10 +61,6 @@ class SettingsAboutTest : TestSetup() { // TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/246961 @Test fun verifyAboutFirefoxMenuItems() { - activityIntentTestRule.applySettingsExceptions { - it.isJumpBackInCFREnabled = false - it.isTCPCFREnabled = false - } homeScreen { }.openThreeDotMenu { }.openSettings { diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsHomepageTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsHomepageTest.kt index 8dc31c64e8..0f41e4ac94 100644 --- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsHomepageTest.kt +++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsHomepageTest.kt @@ -124,12 +124,12 @@ class SettingsHomepageTest : TestSetup() { }.openThreeDotMenu { }.bookmarkPage { }.goToHomescreen { - verifyRecentBookmarksSectionIsDisplayed(exists = true) + verifyBookmarksSectionIsDisplayed(exists = true) }.openThreeDotMenu { }.openCustomizeHome { clickRecentBookmarksButton() }.goBackToHomeScreen { - verifyRecentBookmarksSectionIsDisplayed(exists = false) + verifyBookmarksSectionIsDisplayed(exists = false) } } diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsSearchTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsSearchTest.kt index 5abbaa8b4a..d12d3a9c8c 100644 --- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsSearchTest.kt +++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsSearchTest.kt @@ -9,7 +9,6 @@ import androidx.test.espresso.Espresso.pressBack import okhttp3.mockwebserver.MockWebServer import org.junit.After import org.junit.Before -import org.junit.Ignore import org.junit.Rule import org.junit.Test import org.mozilla.fenix.customannotations.SmokeTest @@ -511,7 +510,6 @@ class SettingsSearchTest : TestSetup() { } // TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/412927 - @Ignore("Failing, see: https://bugzilla.mozilla.org/show_bug.cgi?id=1807268") @Test fun verifyShowClipboardSuggestionsToggleTest() { val link = "https://www.mozilla.org/en-US/" @@ -599,12 +597,11 @@ class SettingsSearchTest : TestSetup() { verifySearchShortcutChecked( EngineShortcut(name = "Google", checkboxIndex = 1, isChecked = true), EngineShortcut(name = "Bing", checkboxIndex = 4, isChecked = true), - EngineShortcut(name = "Amazon.com", checkboxIndex = 7, isChecked = true), - EngineShortcut(name = "DuckDuckGo", checkboxIndex = 10, isChecked = true), - EngineShortcut(name = "eBay", checkboxIndex = 13, isChecked = true), - EngineShortcut(name = "Wikipedia", checkboxIndex = 16, isChecked = true), - EngineShortcut(name = "Reddit", checkboxIndex = 19, isChecked = false), - EngineShortcut(name = "YouTube", checkboxIndex = 22, isChecked = false), + EngineShortcut(name = "DuckDuckGo", checkboxIndex = 7, isChecked = true), + EngineShortcut(name = "eBay", checkboxIndex = 10, isChecked = true), + EngineShortcut(name = "Wikipedia", checkboxIndex = 13, isChecked = true), + EngineShortcut(name = "Reddit", checkboxIndex = 16, isChecked = false), + EngineShortcut(name = "YouTube", checkboxIndex = 19, isChecked = false), ) } } @@ -619,14 +616,13 @@ class SettingsSearchTest : TestSetup() { }.openSearchSubMenu { openManageShortcutsMenu() selectSearchShortcut(EngineShortcut(name = "Google", checkboxIndex = 1)) - selectSearchShortcut(EngineShortcut(name = "Amazon.com", checkboxIndex = 7)) - selectSearchShortcut(EngineShortcut(name = "Reddit", checkboxIndex = 19)) - selectSearchShortcut(EngineShortcut(name = "YouTube", checkboxIndex = 22)) + selectSearchShortcut(EngineShortcut(name = "Reddit", checkboxIndex = 16)) + selectSearchShortcut(EngineShortcut(name = "YouTube", checkboxIndex = 19)) exitMenu() } searchScreen { clickSearchSelectorButton() - verifySearchShortcutListContains("Google", "Amazon.com", shouldExist = false) + verifySearchShortcutListContains("Google", shouldExist = false) verifySearchShortcutListContains("YouTube", shouldExist = true) verifySearchShortcutListContains("Reddit", shouldExist = true) } diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsSitePermissionsTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsSitePermissionsTest.kt index 4b3842fc6a..720f90c4c8 100644 --- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsSitePermissionsTest.kt +++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsSitePermissionsTest.kt @@ -8,7 +8,6 @@ import androidx.core.net.toUri import androidx.test.espresso.Espresso.pressBack import androidx.test.filters.SdkSuppress import mozilla.components.concept.engine.mediasession.MediaSession -import org.junit.Ignore import org.junit.Rule import org.junit.Test import org.mozilla.fenix.customannotations.SmokeTest @@ -146,7 +145,6 @@ class SettingsSitePermissionsTest : TestSetup() { } // TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/2286807 - @Ignore("Failing, see https://bugzilla.mozilla.org/show_bug.cgi?id=1827599") @SmokeTest @Test fun verifyAutoplayBlockAudioOnlySettingOnMutedVideoTest() { @@ -210,7 +208,6 @@ class SettingsSitePermissionsTest : TestSetup() { } // TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/2286806 - @Ignore("Failing, see https://bugzilla.mozilla.org/show_bug.cgi?id=1827599") @Test fun verifyAutoplayAllowAudioVideoSettingOnMutedVideoTest() { val mutedVideoTestPage = getMutedVideoPageAsset(mockWebServer) diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/HomeScreenRobot.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/HomeScreenRobot.kt index 2732ccbcab..cbbceaff97 100644 --- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/HomeScreenRobot.kt +++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/HomeScreenRobot.kt @@ -430,8 +430,8 @@ class HomeScreenRobot { fun verifyJumpBackInShowAllButton() = assertUIObjectExists(itemContainingText(getStringResource(R.string.recent_tabs_show_all))) fun verifyRecentlyVisitedSectionIsDisplayed(exists: Boolean) = assertUIObjectExists(itemContainingText(getStringResource(R.string.history_metadata_header_2)), exists = exists) - fun verifyRecentBookmarksSectionIsDisplayed(exists: Boolean) = - assertUIObjectExists(itemContainingText(getStringResource(R.string.recently_saved_title)), exists = exists) + fun verifyBookmarksSectionIsDisplayed(exists: Boolean) = + assertUIObjectExists(itemContainingText(getStringResource(R.string.home_bookmarks_title)), exists = exists) fun verifyRecentlyVisitedSearchGroupDisplayed(shouldBeDisplayed: Boolean, searchTerm: String, groupSize: Int) { // checks if the search group exists in the Recently visited section @@ -439,12 +439,12 @@ class HomeScreenRobot { scrollToElementByText("Recently visited") assertUIObjectExists( itemContainingText(searchTerm) - .getFromParent(UiSelector().text("$groupSize sites")), + .getFromParent(UiSelector().text("$groupSize pages")), ) } else { assertUIObjectIsGone( itemContainingText(searchTerm) - .getFromParent(UiSelector().text("$groupSize sites")), + .getFromParent(UiSelector().text("$groupSize pages")), ) } } diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/SettingsSubMenuHomepageRobot.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/SettingsSubMenuHomepageRobot.kt index 9d1c919a37..c78994784a 100644 --- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/SettingsSubMenuHomepageRobot.kt +++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/SettingsSubMenuHomepageRobot.kt @@ -444,7 +444,7 @@ private fun jumpBackInButton() = onView(allOf(withText(R.string.customize_toggle_jump_back_in))) private fun recentBookmarksButton() = - onView(allOf(withText(R.string.customize_toggle_recent_bookmarks))) + onView(allOf(withText(R.string.customize_toggle_bookmarks))) private fun recentlyVisitedButton() = onView(allOf(withText(R.string.customize_toggle_recently_visited))) diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/ThreeDotMenuMainRobot.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/ThreeDotMenuMainRobot.kt index a20a79088a..70317c8937 100644 --- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/ThreeDotMenuMainRobot.kt +++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/ThreeDotMenuMainRobot.kt @@ -162,23 +162,25 @@ class ThreeDotMenuMainRobot { assertUIObjectExists( normalBrowsingNewTabButton(), bookmarksButton(), + addBookmarkButton(), historyButton(), downloadsButton(), + passwordsButton(), addOnsButton(), syncAndSaveDataButton(), findInPageButton(), + translateButton(), desktopSiteButton(), reportSiteIssueButton(), - addToHomeScreenButton(), - addToShortcutsButton(), - saveToCollectionButton(), - addBookmarkButton(), desktopSiteToggle(isRequestDesktopSiteEnabled), - translateButton(), + ) // Swipe to second part of menu expandMenu() assertUIObjectExists( + addToHomeScreenButton(), + addToShortcutsButton(), + saveToCollectionButton(), settingsButton(), ) if (FxNimbus.features.print.value().browserPrintEnabled) { @@ -197,6 +199,7 @@ class ThreeDotMenuMainRobot { bookmarksButton(), historyButton(), downloadsButton(), + passwordsButton(), addOnsButton(), // Disabled step due to https://github.com/mozilla-mobile/fenix/issues/26788 // syncAndSaveDataButton, @@ -717,6 +720,8 @@ private fun historyButton() = itemContainingText(getStringResource(R.string.library_history)) private fun downloadsButton() = itemContainingText(getStringResource(R.string.library_downloads)) +private fun passwordsButton() = + itemContainingText(getStringResource(R.string.browser_menu_passwords)) private fun addOnsButton() = itemContainingText(getStringResource(R.string.browser_menu_extensions)) private fun desktopSiteButton() = |