stratadox / specification
An implementation of the Specification Pattern for Php7
v1.0.2
2017-12-20 02:36 UTC
Requires
- php: >=7.0
- stratadox/specification-interfaces: ^1.0
Requires (Dev)
- phpunit/phpunit: ^6.2
- satooshi/php-coveralls: ^1.0
This package is auto-updated.
Last update: 2024-10-29 04:42:10 UTC
README
An implementation of the Specification pattern for Php7
Installation
Install using composer:
composer require stratadox/specification
Usage Sample
// The business logic $allBoxes = CollectionOfBoxes::containing( Box::ofWeight(1), Box::ofWeight(2), Box::ofWeight(3), Box::ofWeight(5), Box::ofWeight(12), Box::ofWeight(26) ); $weighBetween2and10 = AreHeavier::than(2)->and(AreLighter::than(10)); $this->assertEquals( CollectionOfBoxes::containing( Box::ofWeight(3), Box::ofWeight(5), Box::ofWeight(26) ), $allBoxes->that($weighBetween2and10->or(AreHeavier::than(20))) );