public function testMergeUnique() { $expectedMerge = new ArrayCollection(array(new HelperCollectionObject(10), new HelperCollectionObject(20), new HelperCollectionObject(30), new HelperCollectionObject(40), new HelperCollectionObject(50), new HelperCollectionObject(2), new HelperCollectionObject(1), new HelperCollectionObject(3), new HelperCollectionObject(99), new HelperCollectionObject(4))); $mergeItems = DoctrineHelper::mergeUnique($this->collection, $this->actualItems->toArray(), 'Id'); $this->assertEquals(array_values($expectedMerge->toArray()), array_values($mergeItems)); $mergeItems = DoctrineHelper::mergeUnique($this->collection, $this->actualItems->toArray(), 'id'); $this->assertEquals(array_values($expectedMerge->toArray()), array_values($mergeItems)); $mergeItems = DoctrineHelper::mergeUnique($this->collection, $this->actualItems->toArray(), 'getId'); $this->assertEquals(array_values($expectedMerge->toArray()), array_values($mergeItems)); $mergeItems = DoctrineHelper::mergeUnique($this->collection, $this->actualItems->toArray(), function ($e) { return $e->getId(); }); $this->assertEquals(array_values($expectedMerge->toArray()), array_values($mergeItems)); }