Phalcon\Test\Unit\Forms\FormTest::testFormHasMessagesFor PHP Method

testFormHasMessagesFor() public method

Tests Form::hasMessagesFor
Since: 2016-04-03
Author: Sid Roberts ([email protected])
    public function testFormHasMessagesFor()
    {
        $this->specify('Form::hasMessagesFor does not check correctly if the Group is empty', function () {
            // First element
            $telephone = new Text('telephone');
            $telephone->addValidators([new Regex(['pattern' => '/\\+44 [0-9]+ [0-9]+/', 'message' => 'The telephone has an invalid format'])]);
            // Second element
            $address = new Text('address');
            $form = new Form();
            $form->add($telephone);
            $form->add($address);
            expect($form->isValid(['telephone' => '12345', 'address' => 'hello']))->false();
            expect($form->getMessagesFor('telephone'))->equals(Group::__set_state(['_messages' => [Message::__set_state(['_type' => 'Regex', '_message' => 'The telephone has an invalid format', '_field' => 'telephone', '_code' => 0])]]));
            expect($form->getMessagesFor('address'))->equals(Group::__set_state(['_messages' => []]));
            expect($form->hasMessagesFor('telephone'))->true();
            expect($form->hasMessagesFor('address'))->false();
        });
    }