Complete accessibility identifier coverage across all 152 project files
Exhaustive file-by-file audit of every Swift file in the project (iOS app, Watch app, Widget extension). Every interactive UI element — buttons, toggles, pickers, links, menus, tap gestures, text editors, color pickers, photo pickers — now has an accessibilityIdentifier for XCUITest automation. 46 files changed across Shared/, Onboarding/, Watch App/, and Widget targets. Added ~100 new ID definitions covering settings debug controls, export/photo views, sharing templates, customization subviews, onboarding flows, tip modals, widget voting buttons, and watch mood buttons.
This commit is contained in:
@@ -214,6 +214,7 @@ struct NonSubscriberView: View {
|
||||
}
|
||||
.accessibilityLabel(String(localized: "Track Your Mood"))
|
||||
.accessibilityHint(String(localized: "Tap to open app and subscribe"))
|
||||
.accessibilityIdentifier(AccessibilityID.Widget.subscribeLink)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -93,6 +93,7 @@ struct VotingView: View {
|
||||
.buttonStyle(.plain)
|
||||
.accessibilityLabel(mood.strValue)
|
||||
.accessibilityHint(String(localized: "Log this mood"))
|
||||
.accessibilityIdentifier(AccessibilityID.Widget.voteMoodButton(mood.strValue))
|
||||
} else {
|
||||
Link(destination: URL(string: "reflect://subscribe")!) {
|
||||
moodIcon(for: mood, size: size)
|
||||
@@ -100,6 +101,7 @@ struct VotingView: View {
|
||||
}
|
||||
.accessibilityLabel(mood.strValue)
|
||||
.accessibilityHint(String(localized: "Open app to subscribe"))
|
||||
.accessibilityIdentifier(AccessibilityID.Widget.subscribeLink)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -119,12 +121,14 @@ struct VotingView: View {
|
||||
.buttonStyle(.plain)
|
||||
.accessibilityLabel(mood.strValue)
|
||||
.accessibilityHint(String(localized: "Log this mood"))
|
||||
.accessibilityIdentifier(AccessibilityID.Widget.voteMoodButton(mood.strValue))
|
||||
} else {
|
||||
Link(destination: URL(string: "reflect://subscribe")!) {
|
||||
content
|
||||
}
|
||||
.accessibilityLabel(mood.strValue)
|
||||
.accessibilityHint(String(localized: "Open app to subscribe"))
|
||||
.accessibilityIdentifier(AccessibilityID.Widget.subscribeLink)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -196,12 +200,14 @@ struct LargeVotingView: View {
|
||||
.buttonStyle(.plain)
|
||||
.accessibilityLabel(mood.strValue)
|
||||
.accessibilityHint(String(localized: "Log this mood"))
|
||||
.accessibilityIdentifier(AccessibilityID.Widget.voteMoodButton(mood.strValue))
|
||||
} else {
|
||||
Link(destination: URL(string: "reflect://subscribe")!) {
|
||||
moodButtonContent(for: mood)
|
||||
}
|
||||
.accessibilityLabel(mood.strValue)
|
||||
.accessibilityHint(String(localized: "Open app to subscribe"))
|
||||
.accessibilityIdentifier(AccessibilityID.Widget.subscribeLink)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -261,12 +267,14 @@ struct InlineVotingView: View {
|
||||
.buttonStyle(.plain)
|
||||
.accessibilityLabel(mood.strValue)
|
||||
.accessibilityHint(String(localized: "Log this mood"))
|
||||
.accessibilityIdentifier(AccessibilityID.Widget.voteMoodButton(mood.strValue))
|
||||
} else {
|
||||
Link(destination: URL(string: "reflect://subscribe")!) {
|
||||
moodIcon(for: mood)
|
||||
}
|
||||
.accessibilityLabel(mood.strValue)
|
||||
.accessibilityHint(String(localized: "Open app to subscribe"))
|
||||
.accessibilityIdentifier(AccessibilityID.Widget.subscribeLink)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user