Phalcon\Test\Unit\Validation\Validator\IdenticalTest::testMultipleFieldMultipleAccepted PHP Метод

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

Tests identical validator with multiple field and multiple accepted
С версии: 2016-06-05
Автор: Wojciech Ślawski ([email protected])
    public function testMultipleFieldMultipleAccepted()
    {
        $this->specify('Test identical with multiple field and accepted.', function () {
            $validation = new Validation();
            $validationMessages = ['name' => 'Name must be SomeValue.', 'anotherName' => 'AnotherName must be SomeAnotherValue.'];
            $validation->add(['name', 'anotherName'], new Validation\Validator\Identical(['accepted' => ['name' => 'SomeValue', 'anotherName' => 'SomeAnotherValue'], 'message' => $validationMessages]));
            $messages = $validation->validate(['name' => 'SomeValue', 'anotherName' => 'SomeAnotherValue']);
            expect($messages->count())->equals(0);
            $messages = $validation->validate(['name' => 'SomeValue123', 'anotherName' => 'SomeAnotherValue']);
            expect($messages->count())->equals(1);
            expect($messages->offsetGet(0)->getMessage())->equals($validationMessages['name']);
            $messages = $validation->validate(['name' => 'SomeValue', 'anotherName' => 'SomeAnotherValue123']);
            expect($messages->count())->equals(1);
            expect($messages->offsetGet(0)->getMessage())->equals($validationMessages['anotherName']);
            $messages = $validation->validate(['name' => 'SomeValue123', 'anotherName' => 'SomeAnotherValue123']);
            expect($messages->count())->equals(2);
            expect($messages->offsetGet(0)->getMessage())->equals($validationMessages['name']);
            expect($messages->offsetGet(1)->getMessage())->equals($validationMessages['anotherName']);
        });
    }