rafaqz / Interfaces.jl

Macros to define and implement interfaces, to ensure they are checked and correct.
MIT License
72 stars 4 forks source link

put test objects in implements and test modules #37

Closed rafaqz closed 8 months ago

rafaqz commented 8 months ago

This PR moves test objects back to the @implements macro, and implements the test method for Module:

@test Interfaces.test(SomeModule)

Which cuts a huge amount of code from BaseInterfaces.jl and ensures everything implemented is tested.

Closes #35

codecov-commenter commented 8 months ago

Codecov Report

Merging #37 (dd0f8ad) into main (8702407) will decrease coverage by 7.39%. The diff coverage is 27.27%.

:exclamation: Current head dd0f8ad differs from pull request most recent head 5ce4665. Consider uploading reports for the commit 5ce4665 to get more accurate results

@@            Coverage Diff             @@
##             main      #37      +/-   ##
==========================================
- Coverage   82.38%   75.00%   -7.39%     
==========================================
  Files           5        5              
  Lines         159      176      +17     
==========================================
+ Hits          131      132       +1     
- Misses         28       44      +16     
Files Coverage Δ
src/implements.jl 73.91% <100.00%> (+1.18%) :arrow_up:
src/interface.jl 77.77% <ø> (ø)
src/test.jl 72.51% <11.11%> (-10.09%) :arrow_down:

:mega: Codecov offers a browser extension for seamless coverage viewing on GitHub. Try it in Chrome or Firefox today!