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

dangernoodle-io / breadboard / 29066557506
96%

Build:
DEFAULT BRANCH: main
Ran 10 Jul 2026 03:19AM UTC
Jobs 1
Files 82
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

10 Jul 2026 03:18AM UTC coverage: 100.0%. Remained the same
29066557506

push

github

web-flow
refactor: extract bb_core callback-slot helper; migrate bb_wifi ota-validated + on_disconnect seams (#803)

the "single-slot injected callback: static slot + setter + null-safe
dispatch" idiom appeared twice in bb_wifi (ota-validated query,
on_disconnect notify). extract it to bb_core/bb_callback_slot.h --
three macros (BB_CALLBACK_SLOT_RET, BB_CALLBACK_SLOT_VOID0,
BB_CALLBACK_SLOT_VOID) covering the return-value, no-arg-void, and
with-args-void shapes.

each macro's generated `invoke` reads its own file-static slot
directly -- no separate externally-linked dispatch(cb, ...) symbol --
so there's no undeclared-external surface and the real, shipped
instantiations are host-testable through their real public symbols
(set -> invoke).

the real seam instantiations live in
platform/host/bb_wifi/bb_wifi_emit.c, which is compiled into both the
host test binary and the ESP-IDF firmware, so runtime behavior is
host-tested via the exact shipped functions, not a copy:
- ota-validated (RET): bb_wifi_internal_ota_validated is both the
  macro's invoke and wifi_reconn.c's existing private accessor -- no
  extra wrapper.
- on_disconnect (VOID0): migrates the previously hand-rolled
  s_on_disconnect_cb + bb_wifi_register_on_disconnect onto the macro;
  the event_handler call site now calls bb_wifi_on_disconnect_invoke().

on_got_ip stays hand-rolled -- its late-registration replay behavior
(fires immediately if already connected) doesn't fit the plain slot
macro; noted for a future macro variant.

tighten the consolidation rule to trigger extraction at the SECOND
instance, and correct the wiki worked example to describe what's
actually migrated (the net-event sink is a further instance landing
in a follow-up PR).

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>

3313 of 3313 branches covered (100.0%)

Branch coverage included in aggregate %.

5259 of 5259 relevant lines covered (100.0%)

9671.33 hits per line

Jobs
ID Job ID Ran Files Coverage
1 29066557506.1 10 Jul 2026 03:19AM UTC 82
100.0
GitHub Action Run
Source Files on build 29066557506
  • Tree
  • List 82
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #29066557506
  • 01c83480 on github
  • Prev Build on main (#29065435848)
  • Next Build on main (#29067717927)
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