From 7ae7e9ff472b5fa9789dea49ebccbc1a829ba419 Mon Sep 17 00:00:00 2001 From: Rastislav Brandobur Date: Wed, 30 Aug 2023 10:56:21 +0200 Subject: [PATCH] added maxLength validation tests --- tests/php/Forms/TextareaFieldTest.php | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/tests/php/Forms/TextareaFieldTest.php b/tests/php/Forms/TextareaFieldTest.php index accd6a587..f75bd4589 100644 --- a/tests/php/Forms/TextareaFieldTest.php +++ b/tests/php/Forms/TextareaFieldTest.php @@ -4,6 +4,7 @@ namespace SilverStripe\Forms\Tests; use SilverStripe\Dev\SapphireTest; use SilverStripe\Forms\TextareaField; +use SilverStripe\Forms\RequiredFields; class TextareaFieldTest extends SapphireTest { @@ -50,6 +51,30 @@ class TextareaFieldTest extends SapphireTest ); } + /** + * Tests the TextareaField Max Length Validation Failure + */ + public function testMaxLengthValidationFail() + { + $field = new TextareaField("Test", "Test"); + $field->setMaxLength(5); + $field->setValue("John Doe"); // 8 characters, so should fail + $result = $field->validate(new RequiredFields()); + $this->assertFalse($result); + } + + /** + * Tests the TextareaField Max Length Validation Success + */ + public function testMaxLengthValidationSuccess() + { + $field = new TextareaField("Test", "Test"); + $field->setMaxLength(5); + $field->setValue("John"); // 4 characters, so should pass + $result = $field->validate(new RequiredFields()); + $this->assertTrue($result); + } + public function testValueEntities() { $inputText = "These are some unicodes: äöü";