Skip to content

v1.2.0 — Complete the test pyramid + DI cleanup

Choose a tag to compare

@parisek parisek released this 26 May 08:51
· 80 commits to main since this release
380c414

Closes #17 (meta).

Highlights

  • MediaArrayBuilder kernel safety net (#18): 18 new kernel tests covering buildImage / buildFileImage / buildVideo / buildDocument / buildImageLink / buildFileImageLink / getSvgViewBoxDimensions against real Drupal media + file + image entities.
  • EntityHelper field-getter kernel safety net (#19): 18 new kernel tests covering text/textarea/select/double/boolean/date/daterange/link/term/entity_reference getters.
  • FilterLinks DI (#20): request_stack via ContainerFactoryPluginInterface. \Drupal::request() static call gone.
  • TwigExtension DI (#21): string_translation via constructor. \Drupal::translation() static call gone.
  • scripts/dev-link-module.sh (#22): single source of truth for local + CI module wiring. find -maxdepth 1 picks up any new top-level file automatically.
  • Coverage floor raised to 45% (current observed: 45.88%).

Stats

  • 228 tests, 976 assertions
  • Coverage: 45.88% (+13.55% over v1.1.0)
  • PHPStan: clean at level 1
  • 6 PRs merged: #24, #25, #26, #27, #28, #29

Deferred to v1.3.0

  • buildRemoteVideo kernel coverage (needs oembed bundle + network mocking)
  • buildLottie + getImageField / getFileField / getMediaField kernel coverage
  • Resizer kernel coverage (177-line service with 0% kernel cover)
  • contrib-gated getters (getOfficeHoursField, getAddressField, getGeoField, getPriceField, getWebformField)
  • 80% coverage target — requires the above