Commit Graph

332 Commits (5d51c4f059645a663e57fd28715d16d9a1ee940a)

Author SHA1 Message Date
ekager 5d51c4f059 Don't use ProcessLifecycleOwner for view-tied consume 5 years ago
Grisha Kruglov 853a0acab4 Closes #4046: Always display 'Desktop' bookmarks folder
See https://github.com/mozilla-mobile/fenix/issues/4046 for a detailed discussion of this.

In short, this patch removes code that would conditionally hide desktop bookmarks depending
on the signed-in state of the browser.
5 years ago
Michael Comella f49fc6dad2 For #8803: hook up frameworkStart metric. 5 years ago
Michael Comella dbf733d70a For #8803: add StartupFrameworkStartMeasurement.
This class controls the central logic around the metrics we want to
record.
5 years ago
Michael Comella 7f618a6a7c For #8803: add Stat and test.
We need to access the data in stat to get the process start time, so we
can calculate the time from process start until application.init for the
frameworkStart probe.
5 years ago
mcarare e87ea301ab For #9536: Update tests to check opened tab is in same browsing mode 5 years ago
Jeff Boek 4cbb9aebaf
Cleans up nav_graph.xml (#9829)
* For #9751 - Cleans up homeFragment directions

* For #9751 - Uses global actions for fragments not owned by homeFragment

* For #9751 - Cleans up SearchFragment directions

* For #9751 - Removes settings action from DeleteBrowsingDataFragment

* For #9751 - Removes browser action from SettingsFragment

* For #9751 - Adds ManagePhoneFeature global action

* For #9751 - Clean up unused deletebrowsingfragment actions

* For #9751 - Cleans Up HistoryFragment actions

* For #9751 - Removes Home -> Search action

* For #9751 - Removes the Bookmark -> Browser action

* For #9751 - Cleans up bookmark fragment actions

* For #9751 - Cleans up actions from ShareController

* For #9751 - Removes defaultBrowserFragment to browserFragment action

* For #9751 - Removes about -> browser action

* For #9751 - Adds global action to TrackingProtectionFragment

* For #9751 - Removes exception -> browser action

* For #9751 - Removes login -> browser action

* For #9751 - Fixes LoginFragment directions

* For #9751 - Removes ExternalAppBrowser directions

* for #9751 - Cleans up actions

* For #9751 - Fixes unit tests

* For #9751 - Addresses nits in PR
5 years ago
ekager 8c238402e2 For #9692 - Fix "Install" PWA menu item labeling 5 years ago
mcarare 8cdc523de9 For #9698: Add unit tests for Context extension getStringWithArgSafe 5 years ago
Christian Sadilek 0f1bff7402 No issue: Refactor readerview to use browser-state 5 years ago
Mihai Eduard Badea d66da53c9a For #2768 - Prevent screenshots in private mode
Added a new option in Private browsing menu to allow or prevent screenshots from being taken while in private mode by adding or removing the FLAG_SECURE flag from the home activity's window.

 This method is called whenever the activity is initialized to account for the browsing mode being changed and whenever the setting from the Private browsing menu is changed.

 The setting is by default set to true (screenshots are allowed to be taken)
5 years ago
Michael Comella 376740cd2c For #9631: replace assertk assertions with junit.
I created a series of editor macros to do this with minimal errors (and
to do it quickly!).
5 years ago
Mihai Adrian dfded8e69c
For #9687: Refactor onboarding cards to follow app architecture (#9743)
* For #9687: Refactor onboarding cards to follow app architecture

* For #9687: Update unit test to new controller parameters
5 years ago
Michael Comella 51a76651d6 For #9605 - review: clarify comments in new test runner. 5 years ago
Michael Comella efef8eaba0 For #9605: TestApplication -> FenixRobolectricTestApplication.
This disambiguates it from the FirefoxTestApplication used in on-device
tests.
5 years ago
Michael Comella 8df49473c0 For #9605: move TestApplication to the helpers package.
The helpers/ package is created to separate the test support code from
the code under test.
5 years ago
Michael Comella 6e0d851da3 For #9605: replace unit test runners with FenixRobolectricTestRunner.
This is how we can apply the new test runner to remove duplication.

This commit was generated programmatically with the following commands:
```
  // Replace test runners with new one.
  find app/src/test -type f -exec gsed -i "s/@RunWith(RobolectricTestRunner::class)/@RunWith(FenixRobolectricTestRunner::class)/" {} +
  find app/src/test -type f -exec gsed -i "s/@RunWith(AndroidJUnit4::class)/@RunWith(FenixRobolectricTestRunner::class)/" {} +

  // Replace imports of old test runners with new one
  find app/src/test -type f -exec gsed -i "s/org.robolectric.RobolectricTestRunner/org.mozilla.fenix.helpers.FenixRobolectricTestRunner/" {} +
  find app/src/test -type f -exec gsed -i "s/androidx.test.ext.junit.runners.AndroidJUnit4/org.mozilla.fenix.helpers.FenixRobolectricTestRunner/" {} +

  // Remove unused imports
  find app/src/test -type f -exec gsed -i "/@Config(application = TestApplication::class)/d" {} +
  find app/src/test -type f -exec gsed -i "/import org.mozilla.fenix.TestApplication/d" {} +
  find app/src/test -type f -exec gsed -i "/import org.robolectric.annotation.Config/d" {} +
```

Where gsed is the GNU version of sed installed via homebrew. After
running these commands, I need to manually clean up the following files:
- FenixRobolectricTestRunner
- LocaleManagerExtensionTest
5 years ago
Michael Comella b0cfa3ee5c For #9605: add FenixRobolectricTestRunner.
This class will help us reduce duplication by specifying the
configuration within the test runner rather than each test needing to
specify it itself.

This class is adapted from Firefox for Fire TV:
  https://github.com/mozilla-mobile/firefox-tv/blob/master/app/src/test/java/org/mozilla/tv/firefox/helpers/FirefoxRobolectricTestRunner.kt
5 years ago
Michael Comella 392dda5eda For #9605: remove unnecessary @RunWith(Robolectric in unit tests.
robolectric increases the run time of tests so it's important to remove
them when they're unnecessary.

Between this change and the last one, the unit test runtime was reduced
by ~10s.
5 years ago
Michael Comella f2acef66b5 For #9605: remove unnecessary @RunWith(AndroidJUnit4) in unit tests.
In unit tests, this annotation annotations defer to robolectric, non-trivially
increasing test runtime so it's important to remove them when they're
unnecessary.
5 years ago
Mihai Adrian 8cd6d7460c
For #9336 Check current destination before navigating (#9353)
* For #9336 Check current destination before navigating

* For #9336 Update unit test to check for navigateSafe
5 years ago
mcarare 76f15a1f7f For #9498: Update unit tests with new constructor argument 5 years ago
Sebastian Kaspari 02aabea14a Update to new feature-media API. 5 years ago
Amaan Marfatia 3dcfed3761 AboutPageAdapter doesn't use notifyDataSetChanged()
We make the AboutPageAdapter inherit from a ListAdapter so that we don't use notifyDataSetChanged().
5 years ago
Mugurell 9f3bbf1fb7 For #8651 - Add HistoryInteractor/Controller unit/ui tests 5 years ago
mcarare 55ea92be5b For #8759 Update Unit tests with activityName instead of packageName 5 years ago
Severin Rudie 35a132d7ff
8017 advanced autoplay controls. (#8978)
* For #8017: add advanced autoplay controls
5 years ago
Arturo Mejia 7dff584b82 Remove @ObsoleteCoroutinesApi from tests 5 years ago
Jonathan Almeida ffd4cdd970 For #7661: Add variant-specific schemas for deep links
In order to target specific variants of Fenix, we're adding schemas that
are specific that app in order to avoid collisions with the other
variants and with other forks of fenix that may have the same schemas.

The current schema for variants:
 - Fenix Nightly: `fenix-nightly://`
 - Fenix Beta: `fenix-beta://`
 - Everything else: `fenix://`
5 years ago
Severin Rudie 3e38b002dd
No issue: fixes test broken by snapshot (#9176)
* No issue: fixes test broken by snapshot

* No issue: ignore flaky tests
5 years ago
Michael Comella 5bd0369aed No issue: remove unused HotStartPerformanceMonitor.
This monitor for hot start was intended to be used by FNPRMS to measure
hot start. However, hot start was deprioritized so it's now essentially
unused.
5 years ago
Mihai Branescu b0e4453fb7 For #8800 - add tests for dismissing highlighted items 5 years ago
mcarare 95a89f9dba For #8474 Remove obsolete unit tests for removed menu items 5 years ago
Arturo Mejia ce4293c8c8 For issue #8908 Notify users when previously unsupported add-ons
become available
5 years ago
Severin Rudie e86120027f For #9091: fix test failure 5 years ago
mcarare 7ae1304612 For #8975: Update unit tests for new separator between title and url 5 years ago
Sawyer Blatz 3548e58c00
For #7158: Improves browser to search animation (#8961) 5 years ago
Sebastian 7b170c4428 Update IntentProcessor implementation to comply with new interface. 5 years ago
ekager e2bfe8d0db For #8621 - Disable failing handlePermissionsChange test 5 years ago
Jonathan Almeida 4bbf87d272 Closes #6730: Lazily initialize account manager on new push message 5 years ago
Grisha Kruglov e6e2dd94c7 Closes #7344: Login storage refactor
The a-c side of this work is in https://github.com/mozilla-mobile/android-components/pull/6128

This switches Fenix to use `SyncableLoginsStorage`, which caches a connection internally
on first access, and doesn't expose any lock/unlock APIs at the public boundary.
5 years ago
Sawyer Blatz e38bff8597 For #5308: Display search shortcuts when going from browser to search 5 years ago
Sawyer Blatz e96732604b For #167: Improves home to browser animation 5 years ago
Michael Comella 9ed43b60b6 For #7781: instrument visual completeness for top sites.
Eyeballing my output in *Debug builds on my P2, this adds approximately 115ms
or slightly less from first frame drawn to visually complete time.
5 years ago
mcarare 361e817fb1 For #6607 Update unit test to include parameter openSearchScreen 5 years ago
Mihai Adrian 9612c3f16d
For #8540: Fix ETP options not being correctly applied (#8688) 5 years ago
Severin Rudie 69c6de7cd4
For #8411: integrate AC permissions changes (#8618) 5 years ago
Mihai Adrian 4be693255d
For #8565: Fix updating dropdown preferences in ETP settings! (#8573)
* For #8565: Create custom SharedPreferenceUpdater for String Preferences

* For #8565: Use custom updater to correctly update DropDownPreference

* For #8565: Set default values for dropDown preferences

* For 8565: add tests for findEntriesValue

* For 8565: clarified findEntryValue

Co-authored-by: Severin Rudie <Baron-Severin@users.noreply.github.com>
5 years ago
Jeff Boek cbad832b19 For #8153 - Allow web-extensions to open tabs in correct browsing mode 5 years ago
Jeff Boek 541bcf072a Reverts all BrowsingModeManager changes 5 years ago