Skip to content

feat: Implement barcode/QR reader subsystem#2

Merged
ralflang merged 1 commit into
FRAMEWORK_6_0from
feat/reader-implementation
May 24, 2026
Merged

feat: Implement barcode/QR reader subsystem#2
ralflang merged 1 commit into
FRAMEWORK_6_0from
feat/reader-implementation

Conversation

@ralflang
Copy link
Copy Markdown
Member

@ralflang ralflang commented May 24, 2026

Summary

  • Add complete Reader subsystem: QR locator (pure-PHP), ZbarLocator (CLI wrapper), NullLocator, QrDecoder
  • New interfaces: QrLocatorInterface, LinearLocatorInterface; reworked ImageLocatorInterface
  • Value objects: BoundingBox, LocatedSymbol, SymbolType enum
  • Unit tests (36) covering FinderPatternDetector, QrGridExtractor, QrDecoder, PhpQrLocator, NullLocator, value objects
  • Integration tests (9) for ZbarLocator with conf.php skip pattern

Refs #1

Test plan

  • phpunit runs unit tests only (defaultTestSuite="unit")
  • phpunit --testsuite integration runs ZbarLocator tests (skips if conf.php missing or binaries unavailable)
  • phpunit test/Unit/ test/Integration/ runs all 105 tests

Add unit and integration tests for the Reader subsystem:
- NullLocator, value objects, FinderPatternDetector, QrGridExtractor,
  QrDecoder, PhpQrLocator, ZbarLocator
- Integration suite with conf.php skip pattern for zbar/qrencode binaries
- Add defaultTestSuite="unit" and integration testsuite to phpunit.xml.dist
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant