aglinxinyuan opened a new pull request, #6987: URL: https://github.com/apache/texera/pull/6987
### What changes were proposed in this PR? Adds 53 tests across four `common/workflow-core` classes (88 -> 141 in these suites). No source changes. - **`StackTraceUtils`** (was **0% covered**, new spec): pins the exact rendered output (header + `Throwable.toString` + frames), the `Caused by` recursion including a 20-deep chain, per-cause frames, and the null-message case. - **`AttributeTypeUtils`**: the unsupported-type `case _` branches of `parseInteger`/`parseLong`/`parseDouble`/`parseBoolean` (asserting both the message and the wrapped `IllegalArgumentException` cause), the previously-unexercised Long/Integer/Timestamp/Boolean input arms, forced-vs-strict divergence (forced `"2147483648"` wraps to `Int.MinValue`; `"1.9"` truncates where strict throws), the `trim.toInt == 1` fallback, schema-inference edges (empty, one-way widening, all-null), and `tupleCasting` null handling. - **`S3StorageClient`**: `uploadPartWithRequest`'s two payload branches (known `contentLength` -> `fromInputStream`, unknown -> `readAllBytes`) with a two-part ordered round trip, the empty-prefix `require` guard, and the abort-on-mid-stream-failure path — asserting the exception propagates, no pending upload id remains (proving `abortMultipartUpload` ran), and no object was published. Follows the suite's existing MinIO-testcontainer approach (no client double exists); no live AWS. - **`LargeBinaryManager`**: `baseUriForExecution` formatting, S3-verified re-seeding across executions, clear-on-empty/null making `create()` fail loudly, and thread-local isolation. Two branches were deliberately left uncovered rather than forced, and are called out in the code review notes: the `DEFAULT_BUCKET.isEmpty` arm (a val captured at object init — unreachable without mutating production config) and a real per-key `DeleteObjects` failure (needs S3 object-lock setup; `throwOnDeleteErrors` is already tested directly). ### Any related issues, documentation, discussions? Closes #6985. ### How was this PR tested? `sbt -java-home <jbr-17> "WorkflowCore/testOnly *S3StorageClientSpec *AttributeTypeUtilsSpec *StackTraceUtilsSpec *LargeBinaryManagerSpec"` -> 141 succeeded, 0 failed (4 suites). `Test/scalafmtCheck` + `Test/scalafix --check` clean. ### 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]
