Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Autofill Settings - Import passwords via sync #2756

Merged
merged 23 commits into from Apr 29, 2024

Conversation

amddg44
Copy link
Contributor

@amddg44 amddg44 commented Apr 17, 2024

Task/Issue URL: https://app.asana.com/0/72649045549333/1206531758082871/f
Tech Design URL:
CC:

Description:
Gives users a path to import passwords via importing on desktop and enabling sync

Steps to test this PR:

  1. Delete all saved passwords (if any) and disable Sync (if enabled)
  2. Go to the Passwords screen and confirm the empty state of the screen contains the new "Import Passwords" button
  3. Tap the "Import Passwords" button and confirm it segues to the new "Import Passwords" screen
  4. Confirm the pixel m.autofill.logins.import.no.passwords fires
  5. Back out of the screen and confirm the pixel m.autofill.logins.import.no-action is fired
  6. Come back into the "Import Passwords" screen
  7. Tap the "Get Desktop Browser" button and confirm it segues to the "Get DuckDuckGo for Mac or Windows" screen and that the pixel m.autofill.logins.import.get.desktop fires
  8. Press the link button and confirm this url is copied to clipboard: https://duckduckgo.com/browser?origin=funnel_browser_ios_sync and that the pixel m.get.desktop.copy is fired
  9. Tap the Share button and confirm the share sheet presents with the same url as before and that the pixel m.get.desktop.share is fired
  10. Go back to the "Import Passwords" screen and this time tap the "Sync With Desktop" button
  11. Confirm it segues to the Sync screen and that the pixel m.autofill.logins.import.sync fires
  12. Go back the Passwords screen and add a password.
  13. Tap the new more navigation bar button and select 'Edit' and confirm the Edit behaviour is as before
  14. Tap the new more navigation bar button again and this time select "Import Passwords"
  15. Confirm the screen segues correctly and that the pixel m.autofill.logins.import is fired
  16. Relaunch the app and that no import success (or failure) pixel is fired
  17. Sync the app with the desktop browser
  18. Relaunch the app again and confirm that this time the pixel m.autofill.logins.import.success is fired

Copy Testing:

  • Use of correct apostrophes in new copy, ie rather than '

Orientation Testing:

  • Portrait
  • Landscape

Device Testing:

  • iPhone SE (1st Gen)
  • iPhone 8
  • iPhone X
  • iPhone 14 Pro
  • iPad

OS Testing:

  • iOS 14
  • iOS 15
  • iOS 16

Theme Testing:

  • Light theme
  • Dark theme

Internal references:

Software Engineering Expectations
Technical Design Template

Copy link

github-actions bot commented Apr 17, 2024

Warnings
⚠️ PR has more than 500 lines of code changing. Consider splitting into smaller PRs if possible.

Generated by 🚫 dangerJS against 24c43e3

@amddg44 amddg44 requested a review from aataraxiaa April 23, 2024 17:15
Copy link
Contributor

@aataraxiaa aataraxiaa left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Awesome work Anya! 🚀 Tested all functionality and Pixels.

Left a couple of super small suggestions. (The one about unnecessary return statements could apply to a few places in the code, but I didn’t comment at each as you may want to disregard the suggestion)

Core/DateExtension.swift Outdated Show resolved Hide resolved
DuckDuckGo/ImportPasswordsViewModel.swift Outdated Show resolved Hide resolved
@amddg44 amddg44 merged commit a845df9 into main Apr 29, 2024
13 checks passed
@amddg44 amddg44 deleted the autofill/anya-import-via-sync branch April 29, 2024 12:01
samsymons added a commit that referenced this pull request Apr 30, 2024
* main: (38 commits)
  Disable the feedback send button when there’s no text (#2800)
  Release 7.118.0-0 (#2802)
  Autofill Settings - Import passwords via sync (#2756)
  Fix selected VPN location consistency (#2797)
  Reapply "Report Apple Ad attribution using pixel" (#2702)
  reapply auto clear fix, clear cookies, load page on link click (#2798)
  Toggle Connect on Demand when receiving user initiated VPN lifecycle events (#2771)
  Update BSK to 141.1.1 (#2796)
  iOS: VPN Metadata Improvements (#2791)
  Add Internal Page suggestions support (#2784)
  iOS: Add pixels to track VPN wake and stop attempts (#2785)
  Fix bug that shows selected tab in strange position in the switcher (#2789)
  Remove AppTP (#2682)
  Release 7.117.0-1 (#2794)
  cherry pick progress bar fix (#2793)
  fix progress bar missing after cold launch (#2792)
  Check entitlements before showing VPN screen from notification (#2748)
  Add parameter allowed encoding to error descriptions (#2781)
  Update Lottie to 4.4.3 (#2765)
  Update to fastlane 2.220.0 to fix ad-hoc lane (#2782)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants