public function testCanNarrowRulesByReduce() { $repo = new RuleRepository($this->rules); $rules = $repo->reduce(function ($rules, $currentRule) { if ($currentRule->isPrivilege()) { $rules[] = $currentRule; } return $rules; }); $this->assertCount(1, $rules); }