Skip to content

Commit 6f43140

Browse files
committed
distinct handle missing key in document
1 parent 03a58b7 commit 6f43140

File tree

2 files changed

+2
-1
lines changed

2 files changed

+2
-1
lines changed

src/MockCollection.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -389,7 +389,7 @@ public function distinct($fieldName, $filter = [], array $options = [])
389389

390390
$matcher = $this->matcherFromQuery($filter);
391391
foreach ($this->documents as $document){
392-
if ($matcher($document)) {
392+
if ($matcher($document) && isset($document[$fieldName])) {
393393
$values[] = $document[$fieldName];
394394
}
395395
}

tests/MockCollectionTest.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1175,6 +1175,7 @@ public function testDistinct()
11751175
]);
11761176

11771177
self::assertThat($this->col->distinct('foo'), self::equalTo(['foo', 'bar', 'baz']));
1178+
self::assertThat($this->col->distinct('missing'), self::equalTo([]));
11781179
self::assertThat($this->col->distinct('foo', ['bar' => 1]), self::equalTo(['foo', 'bar']));
11791180
self::assertThat($this->col->distinct('foo', ['bar' => 2]), self::equalTo(['baz']));
11801181
}

0 commit comments

Comments
 (0)