Skip to content

fix(settings): point app download buttons at Bitly link - #21016

Open
vbudhram wants to merge 1 commit into
mainfrom
fxa-14114
Open

fix(settings): point app download buttons at Bitly link#21016
vbudhram wants to merge 1 commit into
mainfrom
fxa-14114

Conversation

@vbudhram

Copy link
Copy Markdown
Contributor

Because

  • The Adjust link behind the app download buttons on the settings page stopped recording data correctly in March, so the D2M acquisition numbers are estimates.

This pull request

  • Points both store badges in ConnectAnotherDevicePromo at https://mzl.la/setting-appdownload.
  • Updates the two href assertions in the component test.

Issue that this pull request solves

Closes: https://mozilla-hub.atlassian.net/browse/FXA-14114

Checklist

  • My commit is GPG signed.
  • If applicable, I have modified or added tests which pass locally.
  • I have manually reviewed all AI generated code.

Other information

  • The ticket gives one link, and the page has two buttons. The Google Play badge and the App Store badge now use the same URL, so the per-platform redirect depends on Bitly. Tell me in review if you want a separate link for each platform.
  • The slug comes from the ticket. I cannot check from the repo where it resolves, so please confirm it reaches both stores before merge.
  • constants.ts still holds DOWNLOAD_LINK_TEMPLATE_ANDROID, DOWNLOAD_LINK_TEMPLATE_IOS, and DOWNLOAD_LINK_PAIRING_APP with Adjust URLs. Nothing in fxa-settings reads them. I left them alone. They look worth a separate cleanup.

@vbudhram
vbudhram requested a review from a team as a code owner August 12, 2026 18:47
@vbudhram

Copy link
Copy Markdown
Contributor Author

Blocked on a pre-existing test failure that this PR cannot cause.

Failing job: Integration Test - Frontends (PR)
Failing test: packages/fxa-settings/src/pages/Pair2/Supplicant/TimeoutAndCancel/index.test.tsxtimeout > renders the heading and description for this state

The timeout variant's expected description omits the <b> markup that its own Fluent message contains:

  • en.ftl: ...visit <b>firefox.com/pair</b> on your computer.
  • test expects: ...visit firefox.com/pair on your computer.

getByText fails with "text is broken up by multiple elements". The canceled variant in the same VARIANTS table does include the <b> tags, so the two entries disagree. The drift-guard test above it is it.skip, so the mismatch went unnoticed.

Deterministic, not flaky: reran once, identical failure. The test landed in d369b0c. This PR changes only two href values in ConnectAnotherDevicePromo plus that component's test, so there is no path from this diff to Pair2. It appears to be the first fxa-settings PR to run the test, since test_pull_request is gated on_hold on main.

Not fixing it here, because a one-line test-data change in another feature's file is scope creep for a download-link PR. Happy to fold it in if a maintainer prefers that over a separate fix on main.

@vbudhram

Copy link
Copy Markdown
Contributor Author

Folded the one-line test fix in, at the maintainer's request.

9cc9b5a3ad adds the <b> tags to the timeout variant's expected description in Pair2/Supplicant/TimeoutAndCancel/index.test.tsx, so it matches both the component fallback and en.ftl, and matches the canceled entry's existing convention in the same table.

Verified locally: that suite now passes 7, skips the 2 it.skip drift guards. ConnectAnotherDevicePromo still passes 7. Functional gate re-approved after the push.

One thing a reviewer should decide separately. Both variants put literal <b> tags in a plain fallback string, and FtlMsg is used without elems, so those tags are not converted into a real <b> element. That means the markup is likely rendered to users as literal text rather than bold. This PR does not change that behavior, and the canceled test already encoded it before this branch existed. It affects both variants of the card and belongs in its own ticket rather than a download-link PR.

heading: 'Looks like we timed out',
description:
'To connect your mobile device and sync your Firefox data, visit firefox.com/pair on your computer.',
'To connect your mobile device and sync your Firefox data, visit <b>firefox.com/pair</b> on your computer.',

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

@dschom This is the fix for the test failure on main

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant