18 require_mock_env(
'env1');
20 import(
'lib.pkp.tests.PKPTestCase');
21 import(
'lib.pkp.classes.form.Form');
27 protected function setUp() : void {
29 $this->form =
new Form(
'some template');
41 import(
'lib.pkp.classes.validation.ValidatorUrl');
45 $formValidator =
new FormValidator($this->form,
'testData', FORM_VALIDATOR_OPTIONAL_VALUE,
'some.message.key');
46 self::assertEquals(array(
'testData' => array()), $this->form->cssValidation);
47 self::assertSame(FORM_VALIDATOR_OPTIONAL_VALUE, $formValidator->getType());
49 $formValidator =
new FormValidator($this->form,
'testData', FORM_VALIDATOR_REQUIRED_VALUE,
'some.message.key', $validator);
50 self::assertEquals(array(
'testData' => array(
'required')), $this->form->cssValidation);
51 self::assertSame(FORM_VALIDATOR_REQUIRED_VALUE, $formValidator->getType());
54 self::assertSame(
'testData', $formValidator->getField());
55 self::assertSame($this->form, $formValidator->getForm());
56 self::assertSame($validator, $formValidator->getValidator());
63 $formValidator =
new FormValidator($this->form,
'testData', FORM_VALIDATOR_REQUIRED_VALUE,
'some.message.key');
64 self::assertSame(
'##some.message.key##', $formValidator->getMessage());
71 $formValidator =
new FormValidator($this->form,
'testData', FORM_VALIDATOR_REQUIRED_VALUE,
'some.message.key');
72 self::assertSame(
'', $formValidator->getFieldValue());
74 $this->form->setData(
'testData',
null);
75 $formValidator =
new FormValidator($this->form,
'testData', FORM_VALIDATOR_REQUIRED_VALUE,
'some.message.key');
76 self::assertSame(
'', $formValidator->getFieldValue());
78 $this->form->setData(
'testData', 0);
79 $formValidator =
new FormValidator($this->form,
'testData', FORM_VALIDATOR_REQUIRED_VALUE,
'some.message.key');
80 self::assertSame(
'0', $formValidator->getFieldValue());
82 $this->form->setData(
'testData',
'0');
83 $formValidator =
new FormValidator($this->form,
'testData', FORM_VALIDATOR_REQUIRED_VALUE,
'some.message.key');
84 self::assertSame(
'0', $formValidator->getFieldValue());
86 $this->form->setData(
'testData',
' some text ');
87 $formValidator =
new FormValidator($this->form,
'testData', FORM_VALIDATOR_REQUIRED_VALUE,
'some.message.key');
88 self::assertSame(
'some text', $formValidator->getFieldValue());
90 $this->form->setData(
'testData', array(
' some text '));
91 $formValidator =
new FormValidator($this->form,
'testData', FORM_VALIDATOR_REQUIRED_VALUE,
'some.message.key');
92 self::assertSame(array(
' some text '), $formValidator->getFieldValue());
101 $this->form->setData(
'testData',
'');
102 $formValidator =
new FormValidator($this->form,
'testData', FORM_VALIDATOR_REQUIRED_VALUE,
'some.message.key');
103 self::assertFalse($formValidator->isEmptyAndOptional());
107 $this->form->setData(
'testData',
'something');
108 $formValidator =
new FormValidator($this->form,
'testData', FORM_VALIDATOR_OPTIONAL_VALUE,
'some.message.key');
109 self::assertFalse($formValidator->isEmptyAndOptional());
111 $this->form->setData(
'testData', array(
'something'));
112 $formValidator =
new FormValidator($this->form,
'testData', FORM_VALIDATOR_OPTIONAL_VALUE,
'some.message.key');
113 self::assertFalse($formValidator->isEmptyAndOptional());
116 $this->form->setData(
'testData',
'');
117 $formValidator =
new FormValidator($this->form,
'testData', FORM_VALIDATOR_OPTIONAL_VALUE,
'some.message.key');
118 self::assertTrue($formValidator->isEmptyAndOptional());
121 $this->form->setData(
'testData',
null);
122 $formValidator =
new FormValidator($this->form,
'testData', FORM_VALIDATOR_OPTIONAL_VALUE,
'some.message.key');
123 self::assertTrue($formValidator->isEmptyAndOptional());
125 $this->form->setData(
'testData', 0);
126 $formValidator =
new FormValidator($this->form,
'testData', FORM_VALIDATOR_OPTIONAL_VALUE,
'some.message.key');
127 self::assertFalse($formValidator->isEmptyAndOptional());
129 $this->form->setData(
'testData',
'0');
130 $formValidator =
new FormValidator($this->form,
'testData', FORM_VALIDATOR_OPTIONAL_VALUE,
'some.message.key');
131 self::assertFalse($formValidator->isEmptyAndOptional());
133 $this->form->setData(
'testData', array());
134 $formValidator =
new FormValidator($this->form,
'testData', FORM_VALIDATOR_OPTIONAL_VALUE,
'some.message.key');
135 self::assertTrue($formValidator->isEmptyAndOptional());
146 $formValidator =
new FormValidator($this->form,
'testData', FORM_VALIDATOR_OPTIONAL_VALUE,
'some.message.key');
147 self::assertTrue($formValidator->isValid());
150 $formValidator =
new FormValidator($this->form,
'testData', FORM_VALIDATOR_REQUIRED_VALUE,
'some.message.key');
151 self::assertFalse($formValidator->isValid());
153 $this->form->setData(
'testData', array());
154 $formValidator =
new FormValidator($this->form,
'testData', FORM_VALIDATOR_REQUIRED_VALUE,
'some.message.key');
155 self::assertFalse($formValidator->isValid());
157 $this->form->setData(
'testData',
'some value');
158 $formValidator =
new FormValidator($this->form,
'testData', FORM_VALIDATOR_REQUIRED_VALUE,
'some.message.key');
159 self::assertTrue($formValidator->isValid());
161 $this->form->setData(
'testData', array(
'some value'));
162 $formValidator =
new FormValidator($this->form,
'testData', FORM_VALIDATOR_REQUIRED_VALUE,
'some.message.key');
163 self::assertTrue($formValidator->isValid());