test(compose): add RichTextEditor unit + ComposeScreen UI coverage (#176)
Closes the #36 test-coverage gap left after the rich-text editor shipped: - RichTextEditorTest.kt (new JVM unit test, 20 cases): exercises the Compose-editor glue in RichTextEditor.kt that had no direct coverage - applyStyle/applyBlock/applyLink, the AnnotatedString.toRichContent() <-> RichTextContent.toAnnotatedString() round trip across every span/link/ alignment/image/baseStyle channel, and the isStyled/hasBlock predicate FormattingToolbar uses to light up its buttons. All plain TextFieldValue/ AnnotatedString/Color types, so it runs on the JVM with no emulator. applyBlock/applyLink go from private to internal so the test can reach them directly, mirroring applyStyle's existing internal visibility. - ComposeScreenTest.kt (androidTest, following this file's existing createAndroidComposeRule + fake-repository harness): one case taps the bullet-list toolbar button and asserts the sent message carries the <ul><li> HTML (block markers apply to the caret's line, so no fragile on-device range selection is needed); another asserts every toolbar button's click-action label matches its string resource, verifying the accessibility claim (the labels are onClickLabel, not contentDescription). Headings remain deliberately out of scope per the ticket - no model/ toolbar changes here. Closes #36 Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
This commit was merged in pull request #176.
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
e72a9b15c6
commit
f353bdc5ec
@@ -297,7 +297,7 @@ internal fun applyStyle(
|
||||
return TextFieldValue(updated.toAnnotatedString(linkColor, resolveFont), value.selection)
|
||||
}
|
||||
|
||||
private fun applyBlock(
|
||||
internal fun applyBlock(
|
||||
value: TextFieldValue,
|
||||
marker: BlockMarker,
|
||||
linkColor: Color,
|
||||
@@ -315,7 +315,7 @@ private fun applyBlock(
|
||||
)
|
||||
}
|
||||
|
||||
private fun applyLink(
|
||||
internal fun applyLink(
|
||||
value: TextFieldValue,
|
||||
url: String,
|
||||
linkColor: Color,
|
||||
|
||||
Reference in New Issue
Block a user