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

saygoweb / anorm / 18459577217
84%

Build:
DEFAULT BRANCH: master
Ran 13 Oct 2025 08:21AM UTC
Jobs 1
Files 20
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

13 Oct 2025 08:21AM UTC coverage: 80.483% (-18.0%) from 98.443%
18459577217

push

github

web-flow
Implement Join Model with Dynamic Foreign Key Constraint Management (#39)

* Implement Join Model feature with relationship support

- Add core relationship infrastructure (OneHasMany, ManyHasOne, ManyHasMany)
- Add RelationshipManager for handling relationship definitions and loading
- Extend Model class with relationship methods (hasMany, belongsTo, hasManyThrough)
- Extend QueryBuilder with eager loading support (with() method)
- Add comprehensive test suite with 9 test cases covering all relationship types
- Support explicit property names and direct property assignment (no magic methods)
- Maintain backward compatibility with existing Model functionality

Features implemented:
- One-to-many relationships (hasMany)
- Many-to-one relationships (belongsTo)
- Many-to-many relationships (hasManyThrough)
- Explicit relationship loading (loadRelated, loadAllRelated)
- Eager loading with QueryBuilder (with() method)
- Relationship-based JOINs (joinRelationship method)

All tests passing.

* Update Join Model implementation plan with completion status

- Mark all core phases as completed
- Add comprehensive implementation summary
- Document all successfully implemented features
- Update timeline to reflect actual vs planned completion
- Mark all success criteria as met
- Add technical implementation details and usage examples

* Implement dynamic foreign key constraint management

- Add foreign key constraint creation based on relationship definitions
- Extend TableMaker to handle foreign key constraint violations
- Add schema generation capabilities to relationship classes
- Add foreign key configuration options to Model class
- Create comprehensive tests for dynamic foreign key creation
- Support for belongsTo, hasMany, and hasManyThrough relationships
- Automatic creation of join tables for many-to-many relationships
- Constraint options: CASCADE, RESTRICT, SET NULL for delete/update
- All tests passing (13 new tests + 9 existing relationship tests)

T... (continued)

233 of 418 new or added lines in 8 files covered. (55.74%)

800 of 994 relevant lines covered (80.48%)

14.09 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
3
86.36
src/Relationship/RelationshipManager.php
6
78.57
src/Relationship/Relationship.php
12
55.56
src/Relationship/ManyHasOne.php
12
55.56
src/Relationship/OneHasMany.php
13
87.25
-12.75% src/QueryBuilder.php
20
62.96
src/Relationship/ManyHasMany.php
35
77.99
-22.01% src/Model.php
84
37.78
-62.22% src/TableMaker.php
Jobs
ID Job ID Ran Files Coverage
1 18459577217.1 13 Oct 2025 08:21AM UTC 20
80.48
GitHub Action Run
Source Files on build 18459577217
  • Tree
  • List 20
  • Changed 3
  • Source Changed 0
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • 7eea4e4c on github
  • Prev Build on master (#18455163264)
  • Next Build on master (#18463556117)
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