• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

wboayue / rust-ibapi / 25706182176 / 1
92%
main: 92%

Build:
DEFAULT BRANCH: main
Ran 12 May 2026 12:47AM UTC
Files 127
Run time 5s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

12 May 2026 12:45AM UTC coverage: 90.519% (-0.06%) from 90.58%
25706182176.1

push

github

web-flow
contracts: type Contract.right as Option<OptionRight> (typed-status sweep PR 2) (#559)

* contracts: type Contract.right as Option<OptionRight> (typed-status sweep PR 2)

Promote Contract.right from String to Option<OptionRight>. The existing
OptionRight enum gains #[non_exhaustive], FromStr<Err = Error>, ToField,
Hash, Serialize, Deserialize. Empty wire is None; unknown wire surfaces
as Error::Parse instead of a raw string (rule 16).

Contract::option's 4th param changes from &str to OptionRight.
ContractBuilder::right takes OptionRight directly; the runtime
"P/C" case-insensitive validation is deleted (structurally impossible
once typed). Two unreachable tests removed.

FromStr accepts only canonical "C"/"P" - verified no "CALL"/"PUT" wire
in any captured-bytes fixture or C# reference; the long-form note was
doc cruft.

Modernize touched module (rule 9): the inline #[cfg(test)] mod tests
block at the bottom of src/contracts/mod.rs (~220 lines) lifted to a
sibling mod_tests.rs.

Side fix: testdata/builders/orders.rs had right: "?" - that is a
sample-app display fallback for empty string, not a TWS wire value
(verified against tws-api/samples). Changed to "" so the new strict
decoder accepts it.

* contracts, accounts: simplify cleanup from /simplify pass

- src/contracts/mod.rs: collapse the duplicate summary line in
  Contract::option's doc comment (was "Creates an option contract..."
  AND "Creates a simple option contract..." back-to-back).
- src/accounts/common/decoders/mod.rs: add `use ... parse_optional;`
  and drop the 65-char `crate::proto::decoders::` prefix at the 3
  text-decoder call sites.

* contracts: trim doc-comment verbosity (/simplify pass 2)

- OptionRight: condense the no-Default rustdoc from 5 lines of design
  rationale to 2 lines stating the contract (no Default; None is the
  no-right state).
- Contract::option: split "Currency defaults..." from "prefer the
  Contract::call()/put() builders..." — two unrelated thoughts that
 ... (continued)

18540 of 20482 relevant lines covered (90.52%)

25.96 hits per line

Source Files on job 25706182176.1
  • Tree
  • List 127
  • Changed 11
  • Source Changed 10
  • Coverage Changed 6
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 25706182176
  • 2d65b7c9 on github
  • Prev Job for on main (#25704024093.1)
  • Next Job for on main (#25706313921.1)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc