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

wboayue / rust-ibapi / 25360691221
92%

Build:
DEFAULT BRANCH: main
Ran 05 May 2026 06:08AM UTC
Jobs 1
Files 123
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

05 May 2026 06:07AM UTC coverage: 87.936% (+0.2%) from 87.777%
25360691221

push

github

web-flow
test: end-to-end Subscription tests for Notice delivery (PR 4) (#509)

* test: end-to-end Subscription tests for Notice delivery (PR 4)

PR 3 verifies dispatcher classification at the InternalSubscription seam.
This PR closes the loop one layer up: drives bytes through the production
dispatcher and asserts via the public Subscription<T>::next() / iter_data()
API that the consumer sees SubscriptionItem::Notice / Err(_) / None.

Synthesized e2e tests (5 sync + 5 async, in src/transport/{sync,async}_tests):
- request-keyed Notice surfaces as SubscriptionItem::Notice (stream open)
- request-keyed hard error → Some(Err(_)) → None
- order-keyed Notice via order-channel fallback
- unspecified-id Notice not delivered (no channel write)
- iter_data() / data_stream() filter notices, yield only data

Live-gateway smoke tests (2 sync + 2 async in integration/{sync,async}/
tests/notice_delivery.rs), against IB Gateway paper trading:
- invalid contract → terminates with Err (code 200)
- non-transmit outside-RTH order → SubscriptionItem::Notice (code 2109)
  observed end-to-end through the production dispatcher

Examples updated (sync + async market_data) with example_observe_notices
demonstrating SubscriptionItem pattern-matching via iter() / stream();
SubscriptionItem re-exported from prelude for discoverability.

* refactor(tests): tighten Notice e2e tests after self-review

Apply findings from /simplify lens review:

- Extract NOTICE_FARM_OK_MSG and frame constants for the repeated
  "Market data farm connection is OK:usfarm" payload (4 sites per file).
- Collapse the repeated 3-line setup prelude into make_request_subscription
  / make_order_subscription helpers. Eliminates the (Option<i32>, Option<i32>)
  parameter sprawl on the async wrap_subscription.
- Flatten 4-level nested matches in integration/async/tests/notice_delivery.rs
  with let-else: drops one indent level and dedupes the Ok(None) | Err(_)
  break arm.
- Drop "(PR 4)" / "PR 3 verifies" / "PR 5 ad... (continued)

17122 of 19471 relevant lines covered (87.94%)

26.46 hits per line

Jobs
ID Job ID Ran Files Coverage
1 25360691221.1 05 May 2026 06:08AM UTC 123
87.94
GitHub Action Run
Source Files on build 25360691221
  • Tree
  • List 123
  • Changed 2
  • Source Changed 0
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #25360691221
  • d0f85f77 on github
  • Prev Build on main (#25360495756)
  • Next Build on main (#25397008708)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc