Neos\Eel\Tests\Unit\FlowQuery\FlowQueryTest::dataProviderForFilter PHP Метод

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

public dataProviderForFilter ( ) : array
Результат array
    public function dataProviderForFilter()
    {
        $myObject = new \stdClass();
        $myObject->myProperty = 'asdf';
        $myObject->myProperty2 = 'asdf';
        $myObject2 = new \stdClass();
        $myObject2->__identity = 'object-identifier-A1-B2';
        $myObject3 = new \stdClass();
        $myObject3->myProperty = 'aaa';
        $myObject4 = new \stdClass();
        $myObject4->name = 'Robert';
        $myObject5 = new \stdClass();
        $myObject5->isHidden = true;
        $myObject6 = new \stdClass();
        $myObject6->aNumber = 42;
        $myObject7 = new \stdClass();
        $myObject7->aNumber = 142;
        return ['Property existance test works' => ['sourceObjects' => [$myObject, $myObject2], 'filter' => '[myProperty]', 'expectedResult' => [$myObject]], 'Multiple filters are combined with AND together' => ['sourceObjects' => [$myObject, $myObject2, $myObject3], 'filter' => '[myProperty][myProperty2]', 'expectedResult' => [$myObject]], 'Multiple filters can be ORed together using comma' => ['sourceObjects' => [$myObject, $myObject2, $myObject3, $myObject4], 'filter' => '[myProperty2], [name]', 'expectedResult' => [$myObject, $myObject4]], 'Exact matches are supported' => ['sourceObjects' => [$myObject, $myObject2, $myObject3, $myObject4], 'filter' => '[myProperty=asdf]', 'expectedResult' => [$myObject]], 'Boolean matches' => ['sourceObjects' => [$myObject, $myObject2, $myObject3, $myObject4, $myObject5, $myObject6], 'filter' => '[isHidden=true]', 'expectedResult' => [$myObject5]], 'Integer matches' => ['sourceObjects' => [$myObject, $myObject2, $myObject3, $myObject4, $myObject5, $myObject6], 'filter' => '[aNumber = 42]', 'expectedResult' => [$myObject6]], 'Instanceof test works (1)' => ['sourceObjects' => [$myObject], 'filter' => '[instanceof foo]', 'expectedResult' => []], 'Instanceof test works (2)' => ['sourceObjects' => [$myObject], 'filter' => '[  instanceof \\stdClass  ]', 'expectedResult' => [$myObject]], 'Instanceof test works (with test for object)' => ['sourceObjects' => [$myObject], 'filter' => '[  instanceof object  ]', 'expectedResult' => [$myObject]], 'Instanceof test works (with test for string)' => ['sourceObjects' => ['myString'], 'filter' => '[  instanceof string  ]', 'expectedResult' => ['myString']], 'Instanceof test works (with test for integer)' => ['sourceObjects' => [42, '42', 400, 'foo'], 'filter' => '[  instanceof integer  ]', 'expectedResult' => [42, 400]], 'Instanceof test works (with test for integer 2)' => ['sourceObjects' => [42, '42', 400, 'foo'], 'filter' => '[  instanceof int  ]', 'expectedResult' => [42, 400]], 'Instanceof test works (with test for boolean)' => ['sourceObjects' => [false, '', true], 'filter' => '[  instanceof boolean  ]', 'expectedResult' => [false, true]], 'Instanceof test works (with test for float)' => ['sourceObjects' => [false, 42, 42.5, true], 'filter' => '[  instanceof float  ]', 'expectedResult' => [42.5]], 'Instanceof test works (with test for array)' => ['sourceObjects' => [false, 42, 42.5, true, ['foo']], 'filter' => '[  instanceof array  ]', 'expectedResult' => [['foo']]], 'Instanceof test works on attributes' => ['sourceObjects' => [$myObject, $myObject2, $myObject3, $myObject4, $myObject5, $myObject6], 'filter' => '[ isHidden instanceof boolean ]', 'expectedResult' => [$myObject5]], 'Notinstanceof test works (1)' => ['sourceObjects' => [$myObject], 'filter' => '[!instanceof foo]', 'expectedResult' => [$myObject]], 'Notinstanceof test works (2)' => ['sourceObjects' => [$myObject], 'filter' => '[  !instanceof \\stdClass  ]', 'expectedResult' => []], 'Notinstanceof test works (with test for object)' => ['sourceObjects' => [$myObject], 'filter' => '[  !instanceof object  ]', 'expectedResult' => []], 'Notinstanceof test works (with test for string)' => ['sourceObjects' => ['myString'], 'filter' => '[  !instanceof string  ]', 'expectedResult' => []], 'Notinstanceof test works (with test for integer)' => ['sourceObjects' => [42, '42', 400, 'foo'], 'filter' => '[  !instanceof integer  ]', 'expectedResult' => ['42', 'foo']], 'Notinstanceof test works (with test for integer 2)' => ['sourceObjects' => [42, '42', 400, 'foo'], 'filter' => '[  !instanceof int  ]', 'expectedResult' => ['42', 'foo']], 'Notinstanceof test works (with test for boolean)' => ['sourceObjects' => [false, '', true], 'filter' => '[  !instanceof boolean  ]', 'expectedResult' => ['']], 'Notinstanceof test works (with test for float)' => ['sourceObjects' => [false, 42, 42.5, true], 'filter' => '[  !instanceof float  ]', 'expectedResult' => [false, 42, true]], 'Notinstanceof test works (with test for array)' => ['sourceObjects' => [false, 42, 42.5, true, ['foo']], 'filter' => '[  !instanceof array  ]', 'expectedResult' => [false, 42, 42.5, true]], 'Notinstanceof test works on attributes' => ['sourceObjects' => [$myObject, $myObject2, $myObject3, $myObject4, $myObject5, $myObject6], 'filter' => '[ isHidden !instanceof boolean ]', 'expectedResult' => [$myObject, $myObject2, $myObject3, $myObject4, $myObject6]], 'Begin query match' => ['sourceObjects' => [$myObject, $myObject2, $myObject3, $myObject4], 'filter' => '[ myProperty ^= as ]', 'expectedResult' => [$myObject]], 'End query match (1)' => ['sourceObjects' => [$myObject, $myObject2, $myObject3, $myObject4], 'filter' => '[ myProperty $= df ]', 'expectedResult' => [$myObject]], 'End query match (2)' => ['sourceObjects' => [$myObject, $myObject2, $myObject3, $myObject4], 'filter' => '[ myProperty $= a ]', 'expectedResult' => [$myObject3]], 'In-Between Query Match' => ['sourceObjects' => [$myObject, $myObject2, $myObject3, $myObject4], 'filter' => '[ myProperty *= sd ]', 'expectedResult' => [$myObject]], 'Identifier match' => ['sourceObjects' => [$myObject, $myObject2, $myObject3, $myObject4], 'filter' => '#object-identifier-A1-B2', 'expectedResult' => [$myObject2]], 'Not equals query match' => ['sourceObjects' => [$myObject, $myObject2, $myObject3, $myObject4], 'filter' => '[ myProperty != asdf ]', 'expectedResult' => [$myObject2, $myObject3, $myObject4]], 'Less than query match' => ['sourceObjects' => [$myObject6, $myObject7], 'filter' => '[ aNumber < 50 ]', 'expectedResult' => [$myObject6]], 'Less than or equal to query match' => ['sourceObjects' => [$myObject6, $myObject7], 'filter' => '[ aNumber <= 42 ]', 'expectedResult' => [$myObject6]], 'Greater than query match' => ['sourceObjects' => [$myObject6, $myObject7], 'filter' => '[ aNumber > 50 ]', 'expectedResult' => [$myObject7]], 'Greater than or equal to query match' => ['sourceObjects' => [$myObject6, $myObject7], 'filter' => '[ aNumber >= 42 ]', 'expectedResult' => [$myObject6, $myObject7]]];
    }