function it_aggregate_attributes_to_export($dm, Collection $collection, Cursor $cursor) { $dm->getDocumentCollection('foobar')->willReturn($collection); $cursor->toArray()->willReturn([['_id' => 'fooz'], ['_id' => 'baz']]); $collection->aggregate([['$match' => ['_id' => ['$in' => [new \MongoId('55db20922a114eb9078b5130')]]]], ['$unwind' => '$values'], ['$group' => ['_id' => '$values.attribute']]])->willReturn($cursor); $this->getAvailableAttributeIdsToExport(['55db20922a114eb9078b5130'])->shouldReturn(['fooz', 'baz']); }