17 import(
'lib.pkp.tests.PKPTestCase');
18 import(
'lib.pkp.classes.form.Form');
26 return array(
'ControlledVocabDAO');
35 $form =
new Form(
'some template');
38 import(
'lib.pkp.classes.controlledVocab.ControlledVocab');
39 $mockControlledVocab = $this->getMockBuilder(ControlledVocab::class)
40 ->setMethods(array(
'enumerate'))
42 $mockControlledVocab->setId(1);
43 $mockControlledVocab->setAssocType(ASSOC_TYPE_CITATION);
44 $mockControlledVocab->setAssocId(333);
45 $mockControlledVocab->setSymbolic(
'testVocab');
48 $mockControlledVocab->expects($this->any())
50 ->will($this->returnValue(array(1 =>
'vocab1', 2 =>
'vocab2')));
53 $mockControlledVocabDao = $this->getMockBuilder(ControlledVocabDAO::class)
54 ->setMethods(array(
'getBySymbolic'))
58 $mockControlledVocabDao->expects($this->any())
59 ->method(
'getBySymbolic')
60 ->with(
'testVocab', ASSOC_TYPE_CITATION, 333)
61 ->will($this->returnValue($mockControlledVocab));
66 $validator =
new FormValidatorControlledVocab($form,
'testData', FORM_VALIDATOR_REQUIRED_VALUE,
'some.message.key',
'testVocab', ASSOC_TYPE_CITATION, 333);
68 $form->setData(
'testData',
'1');
69 self::assertTrue($validator->isValid());
71 $form->setData(
'testData',
'2');
72 self::assertTrue($validator->isValid());
74 $form->setData(
'testData',
'3');
75 self::assertFalse($validator->isValid());