mirror of
https://github.com/silverstripe/silverstripe-userforms.git
synced 2024-10-22 17:05:42 +02:00
Add unit tests for EditableNumericField::validate()
This commit is contained in:
parent
d917262565
commit
f235c8642c
@ -82,12 +82,12 @@ class EditableNumericField extends EditableFormField
|
||||
$field->setAttribute('data-rule-max', $this->MaxValue);
|
||||
}
|
||||
}
|
||||
|
||||
public function validate()
|
||||
{
|
||||
$result = parent::validate();
|
||||
if ($this->MinValue > $this->MaxValue) {
|
||||
$result->addError(
|
||||
|
||||
_t(__CLASS__ . '.ORDER_WARNING', 'Minimum length should be less than the maximum length.')
|
||||
);
|
||||
}
|
||||
|
@ -14,4 +14,27 @@ class EditableNumericFieldTest extends SapphireTest
|
||||
$field->Name = 'EditableFormField_123456';
|
||||
$this->assertEmpty($field->getFormField()->Title());
|
||||
}
|
||||
|
||||
public function testValidateAddsErrorWhenMinValueIsGreaterThanMaxValue()
|
||||
{
|
||||
/** @var EditableNumericField $field */
|
||||
$field = EditableNumericField::create();
|
||||
$field->MinValue = 10;
|
||||
$field->MaxValue = 5;
|
||||
|
||||
$result = $field->validate();
|
||||
$this->assertFalse($result->isValid(), 'Validation should fail when min is greater than max');
|
||||
$this->assertContains('Minimum length should be less than the maximum length', $result->serialize());
|
||||
}
|
||||
|
||||
public function testValidate()
|
||||
{
|
||||
/** @var EditableNumericField $field */
|
||||
$field = EditableNumericField::create();
|
||||
$field->MinValue = 5;
|
||||
$field->MaxValue = 10;
|
||||
|
||||
$result = $field->validate();
|
||||
$this->assertTrue($result->isValid());
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user