unique() публичный Метод

Only return unique values. (Uses strict equality '===')
public unique ( ) : pinq\ITraversable
Результат pinq\ITraversable
Пример #1
0
 /**
  * @dataProvider someStrings
  */
 public function testAggregateValuesString(\Pinq\ITraversable $traversable, array $data)
 {
     $this->assertEquals(true, $traversable->all(), 'All');
     $this->assertEquals(true, $traversable->any(), 'Any');
     $this->assertEquals(array_sum(array_map('strlen', $data)) / count($data), $traversable->average('strlen'), 'Average string length');
     $this->assertEquals(array_sum(array_map('strlen', $data)), $traversable->sum('strlen'), 'Sum string length');
     $this->assertEquals(array_unique($data), $traversable->unique()->asArray(), 'Unique');
     $this->assertEquals(implode('- -- -', $data), $traversable->implode('- -- -'), 'String implode');
 }
Пример #2
0
 /**
  * @dataProvider notUniqueData
  */
 public function testThatUniqueValuesPreservesKeys(\Pinq\ITraversable $values, array $data)
 {
     $uniqueValuesArray = $values->unique()->asArray();
     $uniqueData = [];
     foreach ($data as $key => $value) {
         if (!in_array($value, $uniqueData, true)) {
             $uniqueData[$key] = $value;
         }
     }
     $this->assertSame(array_keys($uniqueData), array_keys($uniqueValuesArray));
 }
Пример #3
0
 public function visitUnique(Segments\Unique $query)
 {
     $this->traversable = $this->traversable->unique();
 }