aglinxinyuan opened a new pull request, #6055: URL: https://github.com/apache/texera/pull/6055
### What changes were proposed in this PR? Fill uncovered code paths in five `workflow-core` tuple/type utility classes, selected from the Codecov report (not spec-name gaps). No production-code changes. | File | Codecov before | Missed lines targeted | | --- | --- | --- | | `Tuple.scala` | 54.1% | 24 — `getField` miss/Attribute overload, `enforceSchema`, equals branches (incl. binary contents / non-Tuple), `getPartialTuple`, `toString`, size/type-mismatch throws, 3-arg builder `add` + null guards, case-class synthetics | | `TupleLike.scala` | 12.8% | 32 — `SeqTupleLike`/`MapTupleLike` `enforceSchema` (positional vs name-based, null fill, extras dropped), `inMemSize` `???`, all seven `TupleLike.apply` overloads, the `NotAnIterable` guard implicit | | `AttributeType.java` | 47.2% | 18 — `getName` ANY branch (`""`), the full `getAttributeType(Class)` mapping incl. primitive/unknown fallback to ANY | | `AttributeTypeUtils.scala` | 71.7% | 20 (+29 partials) — `SchemaCasting`, `tupleCasting`, both `parseFields` overloads, null-inference early-returns, BINARY/ANY inference fallback, LONG/DOUBLE `compare`, unsupported-type throws, forced-parse failures | | `ArrowUtils.scala` | 67.8% | 15 — `appendTexeraTuple`/`setTexeraTuple`/`getTexeraTuple` round-trip (all 7 types + nulls + row indices), parse-failure → null field, `fromAttributeType(null)` throw, unrecognized `texera_type` metadata fallback | Extends the existing `TupleSpec`, `AttributeTypeUtilsSpec`, and `ArrowUtilsSpec` (the operator-module `ArrowUtilsSpec` doesn't attribute coverage to `workflow-core` sources), and adds `TupleLikeSpec` / `AttributeTypeSpec`. Behavior notes pinned along the way: `$attrType` error messages render the lowercase wire name; the `NotAnIterable` iterable-guard implicit is not summoned for multi-iterable varargs under Scala 2.13 inference (pinned by direct invocation). ### Any related issues, documentation, discussions? Follow-up to the review feedback on #6043: prioritize tests that fill uncovered code paths. ### How was this PR tested? - `sbt "WorkflowCore/testOnly *TupleSpec *TupleLikeSpec *AttributeTypeSpec *AttributeTypeUtilsSpec org.apache.texera.amber.util.ArrowUtilsSpec"` — 105 tests, all green - `sbt "WorkflowCore/Test/scalafmtCheck"` and `sbt "WorkflowCore/scalafixAll --check"` — clean - CI + Codecov delta to confirm ### Was this PR authored or co-authored using generative AI tooling? Generated-by: Claude Code (Opus 4.8 [1M context]) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
