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

wboayue / rust-ibapi / 25706182176
92%

Build:
DEFAULT BRANCH: main
Ran 12 May 2026 12:47AM UTC
Jobs 1
Files 127
Run time 1min
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

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)

31 of 31 new or added lines in 9 files covered. (100.0%)

1 existing line in 1 file now uncovered.

18540 of 20482 relevant lines covered (90.52%)

25.96 hits per line

Coverage Regressions

Lines Coverage ∆ File
1
87.77
-0.18% src/transport/sync/mod.rs
Jobs
ID Job ID Ran Files Coverage
1 25706182176.1 12 May 2026 12:47AM UTC 127
90.52
GitHub Action Run
Source Files on build 25706182176
  • Tree
  • List 127
  • Changed 11
  • Source Changed 10
  • Coverage Changed 6
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #25706182176
  • 2d65b7c9 on github
  • Prev Build on main (#25704024093)
  • Next Build on main (#25706313921)
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