Skip to content

Pro: tag each message-info feature row for QA - #2166

Merged
mpretty-cyro merged 1 commit into
devfrom
feature/qa-tags-pro-message-features
Aug 18, 2026
Merged

Pro: tag each message-info feature row for QA#2166
mpretty-cyro merged 1 commit into
devfrom
feature/qa-tags-pro-message-features

Conversation

@Bilb

@Bilb Bilb commented Aug 18, 2026

Copy link
Copy Markdown
Collaborator

The message details screen lists the Session Pro features a message was sent with, but the rows carried no identifier — so an automated test can only match them by their localized text. That breaks on any wording or translation change, and it cannot distinguish which feature a row is without hard-coding three strings.

This tags each row with a per-feature id, via the existing Modifier.qaTag + content-descriptions mechanism:

Feature Tag
PRO_BADGE pro-message-feature-badges
HIGHER_CHARACTER_LIMIT pro-message-feature-longer-messages
ANIMATED_AVATAR pro-message-feature-animated-display-picture

The names are the per-message subset of the shared Pro feature vocabulary (the same words the Pro settings surface uses — longer-messages, badges, animated-display-picture), so one feature is called the same thing wherever it appears rather than gaining a second name per screen.

These strings are a cross-platform contract: the matching PRs give iOS the same values in SessionProUI.AccessibilityIdentifier and Desktop derives them from its own ProFeatureItems list, so one Appium locator serves all three clients.

No behaviour change — qaTag only adds a Compose test tag.

Verified with ./gradlew :app:compilePlayAutomaticQaKotlin (BUILD SUCCESSFUL).

The message details screen lists the Session Pro features a message was sent
with, but the rows carried no identifier — so an automated test could only
match them by their localized text, which breaks on any wording or translation
change and cannot say which feature a row is.

Tag each row with a per-feature id, named from the per-message subset of the
shared Pro feature vocabulary so one feature is called the same thing wherever
it appears.

The strings are a cross-platform contract: iOS defines the same values in
SessionProUI.AccessibilityIdentifier and Desktop derives them from its own
feature list, so one Appium locator serves all three.
@Bilb
Bilb force-pushed the feature/qa-tags-pro-message-features branch from 71bf449 to 283170b Compare August 18, 2026 00:29
@mpretty-cyro
mpretty-cyro merged commit 06310c3 into dev Aug 18, 2026
5 checks passed
@mpretty-cyro
mpretty-cyro deleted the feature/qa-tags-pro-message-features branch August 18, 2026 00:39
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.

2 participants