Description
Add AnnotatedStringResolver for androidx.compose.ui.text.AnnotatedString in dev.appoutlet.some.android.resolver.compose.
-
Scope and constraints
AnnotatedStringResolver — uses AnnotatedString(text) with random string content; optionally uses AnnotatedString.Builder with a small set of random SpanStyle annotations. Constructor receives random: Random only.
canResolve() uses exact type matching: type == typeOf<AnnotatedString>().
- Includes JVM unit tests verifying type output and
canResolve behavior.
- Depends on
androidx.compose.ui:ui (transitively provides ui-text).
-
References
Scope
In scope: 1 resolver class + 1 test class.
Out of scope: TextStyle (depends on app design system), registering in AndroidTypeResolverProvider (ticket #14).
Acceptance criteria
Description
Add
AnnotatedStringResolverforandroidx.compose.ui.text.AnnotatedStringindev.appoutlet.some.android.resolver.compose.Scope and constraints
AnnotatedStringResolver— usesAnnotatedString(text)with random string content; optionally usesAnnotatedString.Builderwith a small set of randomSpanStyleannotations. Constructor receivesrandom: Randomonly.canResolve()uses exact type matching:type == typeOf<AnnotatedString>().canResolvebehavior.androidx.compose.ui:ui(transitively providesui-text).References
Scope
In scope: 1 resolver class + 1 test class.
Out of scope:
TextStyle(depends on app design system), registering inAndroidTypeResolverProvider(ticket #14).Acceptance criteria
AnnotatedStringResolver.canResolve(typeOf<AnnotatedString>())returns trueAnnotatedStringResolvergenerates non-blank AnnotatedStringscanResolvereturns false for non-matching typesandroid.jarwithandroidx.compose.ui:uion classpath and run as JVM unit tests