/** * Return a new Models object with only the models that pass the filter callback * (Filter callback returned true). * * @param Closure $filter must return true for each item * @return Models Filtered models */ public function filter(Closure $filter) { $filtered = new Models(); $filtered->addObjects(Objects::filter($this->models, $filter)); return $filtered; }
/** * @covers ::filter * @dataProvider dataFilter */ public function testFilter($objects, $callback, $expected) { $this->assertEquals($expected, Objects::filter($objects, $callback)); }
/** * Return a new Models object with only the models that pass the filter callback * (Filter callback returned true). * * @param Closure $filter must return true for each item * @return Models Filtered models */ public function filter(Closure $filter) { $filtered = clone $this; $filtered->models = Objects::filter($filtered->models, $filter); return $filtered; }