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

bleedingdeacons / link / 33918537450
92%

Build:
DEFAULT BRANCH: main
Ran 04 Sep 2026 08:54PM UTC
Jobs 1
Files 11
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

04 Sep 2026 08:54PM UTC coverage: 94.256% (+13.7%) from 80.548%
33918537450

push

github

web-flow
test: raise Link.Core coverage from 80.5% to 94.3% (#12)

Forty-eight tests, and almost all of them are refusals -- the half that
is never exercised by hand. A message that opens is proved the first
time anybody uses the app; a message that will not open is the one that
reaches a member as an empty screen.

The client's whole password surface had no tests at all: SetPassword,
RequestPasswordLink, and the four small endpoints a handset calls about
itself -- push token, key rotation, key fault, mark read -- were at 0%.
What is asserted throughout is the distinction the client exists to
keep: the server refusing and saying why is not the same as the request
never arriving. Collapsing those is how a member is told their password
is wrong when the wifi is off.

Four of the new assertions were wrong on the first run and two more
passed for the wrong reason: they matched a form-encoded body the client
never emits, so DoesNotContain("code=") would have held with the
credential present. Corrected to the JSON the client actually sends.

The envelope refusals now cover what happens to a message sealed to a
keypair the handset no longer has -- permanent, since Fellowship never
held the private half -- and to one whose ciphertext has been tampered
with, which AES-GCM refuses rather than decrypting to nonsense. Both
must return null rather than throw: they run on the push path, where a
throw kills the process Android started to deliver the message.

The history's recovery paths are covered for the same reason. Reading a
corrupt or foreign-keyed file as empty is a design decision, not a
fallback -- refusing to start because a cache will not decrypt would
take the app away over messages the server can send again.

722 of 766 relevant lines covered (94.26%)

9.77 hits per line

Jobs
ID Job ID Ran Files Coverage
1 33918537450.1 04 Sep 2026 08:54PM UTC 11
94.26
GitHub Action Run
Source Files on build 33918537450
  • Tree
  • List 11
  • Changed 4
  • Source Changed 0
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #33918537450
  • dfe8047b on github
  • Prev Build on main (#33908985476)
  • Next Build on main (#33966994143)
  • Delete
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