Coverage for stratum/adapters/string_encoder.py sits at 48% (156 stmts, 78 missed). The gaps concentrate in three areas: the entire transform() method (lines 159-217) is never exercised, the tfidf vectorizer branches are untested (only hashing is parametrized), and the fallback / validation paths — _rust_supported_subset rejections, sklearn fallback on unsupported config, exception handlers, and the padding branch — are not hit.
These are low-effort wins: parametrize vectorizer over {hashing, tfidf}, add a transform round-trip after fit_transform, call _rust_supported_subset directly with unsupported inputs, and toggle rust_backend=False once to cover the sklearn fallback path.
Coverage for
stratum/adapters/string_encoder.pysits at 48% (156 stmts, 78 missed). The gaps concentrate in three areas: the entiretransform()method (lines 159-217) is never exercised, thetfidfvectorizer branches are untested (onlyhashingis parametrized), and the fallback / validation paths —_rust_supported_subsetrejections, sklearn fallback on unsupported config, exception handlers, and the padding branch — are not hit.These are low-effort wins: parametrize
vectorizerover{hashing, tfidf}, add atransformround-trip afterfit_transform, call_rust_supported_subsetdirectly with unsupported inputs, and togglerust_backend=Falseonce to cover the sklearn fallback path.