summaryrefslogtreecommitdiff
path: root/SoraTests/ViewDerivedDataTests.swift
diff options
context:
space:
mode:
authorFuwn <[email protected]>2026-02-23 11:22:00 -0800
committerFuwn <[email protected]>2026-02-23 13:33:43 -0800
commit0e2785fd8e5947aa66528095d2bebac2bf3cb00a (patch)
tree182665fd58c8b29957575a477c8040d64a6c53f4 /SoraTests/ViewDerivedDataTests.swift
parentfeat: add explicit accessibility metadata for grid cells (diff)
downloadsora-testing-0e2785fd8e5947aa66528095d2bebac2bf3cb00a.tar.xz
sora-testing-0e2785fd8e5947aa66528095d2bebac2bf3cb00a.zip
feat: add accessibility metadata to interactive image view
Diffstat (limited to 'SoraTests/ViewDerivedDataTests.swift')
-rw-r--r--SoraTests/ViewDerivedDataTests.swift36
1 files changed, 36 insertions, 0 deletions
diff --git a/SoraTests/ViewDerivedDataTests.swift b/SoraTests/ViewDerivedDataTests.swift
index 7ec8f9f..3a1d8df 100644
--- a/SoraTests/ViewDerivedDataTests.swift
+++ b/SoraTests/ViewDerivedDataTests.swift
@@ -325,6 +325,42 @@ final class ViewDerivedDataTests: XCTestCase { // swiftlint:disable:this type_b
)
}
+ func testInteractiveImageViewProvidesExplicitAccessibilityMetadata() throws {
+ let source = try loadSource(at: "Sora/Views/InteractiveImageView.swift")
+ let normalizedSource = strippingCommentsAndStrings(from: source)
+ let accessibilityLabelCount = tokenCount(
+ matching: #"\.accessibilityLabel\s*\("#,
+ in: normalizedSource
+ )
+ let accessibilityHintCount = tokenCount(
+ matching: #"\.accessibilityHint\s*\("#,
+ in: normalizedSource
+ )
+ let accessibilityValueCount = tokenCount(
+ matching: #"\.accessibilityValue\s*\("#,
+ in: normalizedSource
+ )
+
+ // swiftlint:disable:next prefer_nimble
+ XCTAssertGreaterThan(
+ accessibilityLabelCount,
+ 0,
+ "Interactive image view should expose an explicit accessibility label."
+ )
+ // swiftlint:disable:next prefer_nimble
+ XCTAssertGreaterThan(
+ accessibilityHintCount,
+ 0,
+ "Interactive image view should expose an explicit accessibility hint."
+ )
+ // swiftlint:disable:next prefer_nimble
+ XCTAssertGreaterThan(
+ accessibilityValueCount,
+ 0,
+ "Interactive image view should expose stateful accessibility metadata."
+ )
+ }
+
func testListViewsAvoidComparatorRandomShuffleSorting() throws {
let listViewSource = try loadSource(at: "Sora/Views/Generic/GenericListView.swift")
let favoritesViewSource = try loadSource(at: "Sora/Views/FavoritesView.swift")