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

bleedingdeacons / unity / 30721597697
96%

Build:
DEFAULT BRANCH: main
Ran 01 Aug 2026 10:36PM UTC
Jobs 1
Files 8
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

01 Aug 2026 10:35PM UTC coverage: 94.079%. Remained the same
30721597697

push

github

web-flow
Ship shared Unity test doubles for the plugin suite (#34)

* chore: normalize build.php line endings to LF

build.php was the only file in the repository whose committed blob held
CRLF bytes; everything else is LF, as .gitattributes (`* text=auto`) and
core.autocrlf intend. The mismatch stayed invisible because git skips the
content comparison for files whose stat info is unchanged — touching the
file for any reason surfaced the whole 889-line difference and buried the
real change in it.

`git add --renormalize` does not fix it: `text=auto` deliberately leaves
alone any file that already carries CRLF in the index, so the CRs have to
be stripped explicitly, which is what this commit does.

Line endings only — `git diff --ignore-all-space` on this commit is empty.

* feat(testing): ship shared Unity test doubles for the plugin suite

Unity ships no concrete Member, MemberRepository or Container, only the
interfaces — so every consuming plugin wrote its own doubles. Across the
suite there were eleven Member doubles (two named fixtures, nine anonymous
classes inlined in test files), seven MemberRepository fakes — three of
them independently named InMemoryMemberRepository — and six Container
fakes, roughly 1,300 lines reimplementing the same three contracts.

Worse than the duplication was the drift. Reach and Trusted each carried
an eval()'d hand-copy of Member and MemberRepository as a bootstrap
fallback; Rabbit declared a three-method Member and tested against that;
Integrity mocks Unity contracts by string name with Unity absent from its
test classpath entirely, so Mockery generates a double with no methods and
no signature checking. A signature change here would leave all of them
green and fatal in production.

The doubles live in Unity rather than in a separate package for exactly
that reason: MemberStub implements the contract three directories away, so
adding a method to Member fails this repo's own build before any consumer
sees it. That guarantee... (continued)

143 of 152 relevant lines covered (94.08%)

3.09 hits per line

Jobs
ID Job ID Ran Files Coverage
1 30721597697.1 01 Aug 2026 10:36PM UTC 8
94.08
GitHub Action Run
Source Files on build 30721597697
  • Tree
  • List 8
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #30721597697
  • 255e19b5 on github
  • Prev Build on main (#30668744448)
  • Next Build on main (#30723345403)
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