The GitHub Actions job "Comment commands" on texera.git/main has succeeded.
Run started by GitHub user Ma77Ball (triggered by Ma77Ball).

Head commit for run:
f2d573705981d98ccb946f88182fa59cb82c8614 / Xinyuan Lin <[email protected]>
test(workflow-operator): add unit test coverage for sort and set operator 
descriptors (#5825)

### What changes were proposed in this PR?

Pin behavior of three previously-untested descriptors that reorder rows
or combine relations, in `common/workflow-operator/`. No production-code
changes.

| Spec | Source class | Tests |
| --- | --- | --- |
| `StableMergeSortOpDescSpec` | `StableMergeSortOpDesc` | 3 |
| `SortPartitionsOpDescSpec` | `SortPartitionsOpDesc` | 3 |
| `SymmetricDifferenceOpDescSpec` | `SymmetricDifferenceOpDesc` | 4 |

All three spec files follow the `<srcClassName>Spec.scala` one-to-one
convention.

**Behavior pinned**

| Surface | Contract |
| --- | --- |
| `operatorInfo` | exact name + group (`SORT_GROUP` / `SET_GROUP`);
blocking output port (sort/set must observe all rows);
`SymmetricDifference` advertises two inputs
`PortIdentity(0)`/`PortIdentity(1)` |
| `getPhysicalOp` wiring | `opExecInitInfo` pattern-matches
`OpExecWithClassName` with the exact executor FQCN; port **identities**
carried forward (`keySet`, not counts) |
| `StableMergeSort` | non-parallelizable many-to-one op; deserializes
its `List[SortCriteriaUnit]` sort keys |
| `SortPartitions` | `RangePartition(List(attr), domainMin, domainMax)`
partition requirement; field round-trip |
| `SymmetricDifference` | `HashPartition` requirement on both inputs;
schema propagation passes the shared input schema through and throws
`IllegalArgumentException` when the two inputs' schemas differ |

### Any related issues, documentation, discussions?

Closes #5822.

### How was this PR tested?

Pure unit-test additions; verified locally with:

- `sbt "WorkflowOperator/testOnly
org.apache.texera.amber.operator.sort.StableMergeSortOpDescSpec
org.apache.texera.amber.operator.sortPartitions.SortPartitionsOpDescSpec
org.apache.texera.amber.operator.symmetricDifference.SymmetricDifferenceOpDescSpec"`
— 10 tests, all green
- `sbt "WorkflowOperator/Test/scalafmtCheck"` and `sbt
"WorkflowOperator/Test/scalafix --check"` — clean
- CI to confirm

### Was this PR authored or co-authored using generative AI tooling?

Generated-by: Claude Code (Opus 4.8 [1M context])

Report URL: https://github.com/apache/texera/actions/runs/27890138476

With regards,
GitHub Actions via GitBox

Reply via email to