From c943e11e5e1d73fab8a70ddac9733a7b1f4d3fda Mon Sep 17 00:00:00 2001
From: elvill <elias.villiger@uzh.ch>
Date: Sat, 10 Feb 2018 10:47:14 +0100
Subject: [PATCH] Feature #5414- Auto checktype adjustments

---
 .../qfq/tests/phpunit/BuildFormPlainTest.php  | 26 +++++++++----------
 1 file changed, 13 insertions(+), 13 deletions(-)

diff --git a/extension/qfq/tests/phpunit/BuildFormPlainTest.php b/extension/qfq/tests/phpunit/BuildFormPlainTest.php
index 19b389411..9a4e4bb72 100644
--- a/extension/qfq/tests/phpunit/BuildFormPlainTest.php
+++ b/extension/qfq/tests/phpunit/BuildFormPlainTest.php
@@ -82,26 +82,26 @@ class BuildFormPlainTest extends AbstractDatabaseTest {
         $label['123-r'][API_ELEMENT_ATTRIBUTE] = ['class' => ''];
 
         $result = $build->buildInput($formElement, 'name:1', '', $json);
-        $this->assertEquals('<input id="123" name="name:1" class="form-control" maxlength="255" type="input" value="" data-hidden="no" data-required="no" ><div class="help-block with-errors hidden"></div>', $result);
+        $this->assertEquals('<input id="123" name="name:1" class="form-control" maxlength="1000" type="input" value="" data-hidden="no" data-required="no" ><div class="help-block with-errors hidden"></div>', $result);
         $this->assertEquals(['disabled' => false, FE_MODE_REQUIRED => '', 'form-element' => 'name:1', 'value' => '', API_ELEMENT_UPDATE => $label], $json);
 
         // Min/Max
         $formElement[FE_MIN] = 1;
         $formElement[FE_MAX] = 10;
         $result = $build->buildInput($formElement, 'name:1', '', $json);
-        $this->assertEquals('<input id="123" name="name:1" class="form-control" maxlength="255" type="number" value="" min="1" max="10" data-hidden="no" data-required="no" ><div class="help-block with-errors hidden"></div>', $result);
+        $this->assertEquals('<input id="123" name="name:1" class="form-control" maxlength="1000" type="number" value="" min="1" max="10" data-hidden="no" data-required="no" ><div class="help-block with-errors hidden"></div>', $result);
         $this->assertEquals(['disabled' => false, FE_MODE_REQUIRED => '', 'form-element' => 'name:1', 'value' => '', 'disabled' => false, API_ELEMENT_UPDATE => $label], $json);
 
         $formElement[FE_MIN] = 1;
         $formElement[FE_MAX] = '';
         $result = $build->buildInput($formElement, 'name:1', '', $json);
-        $this->assertEquals('<input id="123" name="name:1" class="form-control" maxlength="255" type="input" value="" min="1" data-hidden="no" data-required="no" ><div class="help-block with-errors hidden"></div>', $result);
+        $this->assertEquals('<input id="123" name="name:1" class="form-control" maxlength="1000" type="input" value="" min="1" data-hidden="no" data-required="no" ><div class="help-block with-errors hidden"></div>', $result);
         $this->assertEquals(['disabled' => false, FE_MODE_REQUIRED => '', 'form-element' => 'name:1', 'value' => '', 'disabled' => false, API_ELEMENT_UPDATE => $label], $json);
 
         $formElement[FE_MIN] = '';
         $formElement[FE_MAX] = 10;
         $result = $build->buildInput($formElement, 'name:1', '', $json);
-        $this->assertEquals('<input id="123" name="name:1" class="form-control" maxlength="255" type="input" value="" max="10" data-hidden="no" data-required="no" ><div class="help-block with-errors hidden"></div>', $result);
+        $this->assertEquals('<input id="123" name="name:1" class="form-control" maxlength="1000" type="input" value="" max="10" data-hidden="no" data-required="no" ><div class="help-block with-errors hidden"></div>', $result);
         $this->assertEquals(['disabled' => false, FE_MODE_REQUIRED => '', 'form-element' => 'name:1', 'value' => '', 'disabled' => false, API_ELEMENT_UPDATE => $label], $json);
         // reset so they don't interfere with next tests
         $formElement[FE_MIN] = '';
@@ -111,19 +111,19 @@ class BuildFormPlainTest extends AbstractDatabaseTest {
         $formElement[FE_CHECK_TYPE] = SANITIZE_ALLOW_PATTERN;
         $formElement[FE_CHECK_PATTERN] = '^[a-z]*$';
         $result = $build->buildInput($formElement, 'name:1', '', $json);
-        $this->assertEquals('<input id="123" name="name:1" class="form-control" maxlength="255" type="input" value="" pattern="^[a-z]*$" data-hidden="no" data-required="no" ><div class="help-block with-errors hidden"></div>', $result);
+        $this->assertEquals('<input id="123" name="name:1" class="form-control" maxlength="1000" type="input" value="" pattern="^[a-z]*$" data-hidden="no" data-required="no" ><div class="help-block with-errors hidden"></div>', $result);
         $this->assertEquals(['disabled' => false, FE_MODE_REQUIRED => '', 'form-element' => 'name:1', 'value' => '', 'disabled' => false, API_ELEMENT_UPDATE => $label], $json);
 
         $formElement[FE_CHECK_TYPE] = SANITIZE_ALLOW_DIGIT;
         $formElement[FE_CHECK_PATTERN] = '';
         $result = $build->buildInput($formElement, 'name:1', '', $json);
-        $this->assertEquals('<input id="123" name="name:1" class="form-control" maxlength="255" type="input" value="" pattern="^[\d]*$" data-pattern-error="Allowed characters: 0...9" data-hidden="no" data-required="no" ><div class="help-block with-errors hidden"></div>', $result);
+        $this->assertEquals('<input id="123" name="name:1" class="form-control" maxlength="1000" type="input" value="" pattern="^[\d]*$" data-pattern-error="Allowed characters: 0...9" data-hidden="no" data-required="no" ><div class="help-block with-errors hidden"></div>', $result);
         $this->assertEquals(['disabled' => false, FE_MODE_REQUIRED => '', 'form-element' => 'name:1', 'value' => '', 'disabled' => false, API_ELEMENT_UPDATE => $label], $json);
 
         $formElement[FE_CHECK_TYPE] = SANITIZE_ALLOW_EMAIL;
         $formElement[FE_CHECK_PATTERN] = '';
         $result = $build->buildInput($formElement, 'name:1', '', $json);
-        $this->assertEquals('<input id="123" name="name:1" class="form-control" maxlength="255" type="input" value="" pattern="^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$" data-pattern-error="Requested format: string@domain" data-hidden="no" data-required="no" ><div class="help-block with-errors hidden"></div>', $result);
+        $this->assertEquals('<input id="123" name="name:1" class="form-control" maxlength="1000" type="input" value="" pattern="^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$" data-pattern-error="Requested format: string@domain" data-hidden="no" data-required="no" ><div class="help-block with-errors hidden"></div>', $result);
         $this->assertEquals(['disabled' => false, FE_MODE_REQUIRED => '', 'form-element' => 'name:1', 'value' => '', 'disabled' => false, API_ELEMENT_UPDATE => $label], $json);
 
         $formElement[FE_CHECK_TYPE] = SANITIZE_ALLOW_ALL;
@@ -133,7 +133,7 @@ class BuildFormPlainTest extends AbstractDatabaseTest {
         // Decimal format
         $formElement[FE_DECIMAL_FORMAT] = '5,2';
         $result = $build->buildInput($formElement, 'name:1', '', $json);
-        $this->assertEquals('<input id="123" name="name:1" class="form-control" maxlength="255" type="input" value="" pattern="^-?[0-9]{0,3}(\.[0-9]{0,2})?$" data-pattern-error="Requested decimal format (mantis,decimal): 5,2" data-hidden="no" data-required="no" ><div class="help-block with-errors hidden"></div>', $result);
+        $this->assertEquals('<input id="123" name="name:1" class="form-control" maxlength="1000" type="input" value="" pattern="^-?[0-9]{0,3}(\.[0-9]{0,2})?$" data-pattern-error="Requested decimal format (mantis,decimal): 5,2" data-hidden="no" data-required="no" ><div class="help-block with-errors hidden"></div>', $result);
         $this->assertEquals(['disabled' => false, FE_MODE_REQUIRED => '', 'form-element' => 'name:1', 'value' => '', 'disabled' => false, API_ELEMENT_UPDATE => $label], $json);
 
         $formElement[FE_DECIMAL_FORMAT] = '';
@@ -147,9 +147,9 @@ class BuildFormPlainTest extends AbstractDatabaseTest {
         $this->assertEquals(['disabled' => false, FE_MODE_REQUIRED => '', 'form-element' => 'name:1', 'value' => '', 'disabled' => false, API_ELEMENT_UPDATE => $label], $json);
 
         // maxlength bigger than physical spec:
-        $formElement['maxLength'] = 1000;
+        $formElement['maxLength'] = 2000;
         $result = $build->buildInput($formElement, 'name:1', '', $json);
-        $this->assertEquals('<input id="123" name="name:1" class="form-control" maxlength="255" type="input" size="40" value="" data-hidden="no" data-required="no" ><div class="help-block with-errors hidden"></div>', $result);
+        $this->assertEquals('<input id="123" name="name:1" class="form-control" maxlength="2000" type="input" size="40" value="" data-hidden="no" data-required="no" ><div class="help-block with-errors hidden"></div>', $result);
         $this->assertEquals(['disabled' => false, FE_MODE_REQUIRED => '', 'form-element' => 'name:1', 'value' => '', 'disabled' => false, API_ELEMENT_UPDATE => $label], $json);
 
         // no size, no maxlength and column not in primary table
@@ -181,20 +181,20 @@ class BuildFormPlainTest extends AbstractDatabaseTest {
         $formElement['tooltip'] = 'Nice Tooltip';
         $formElement['placeholder'] = 'Please type a name';
         $result = $build->buildInput($formElement, 'name:1', 'Hello World', $json);
-        $this->assertEquals('<input id="123" name="name:1" class="form-control" maxlength="255" type="input" size="40" value="Hello World" placeholder="Please type a name" title="Nice Tooltip" data-hidden="no" data-required="no" ><div class="help-block with-errors hidden"></div>', $result);
+        $this->assertEquals('<input id="123" name="name:1" class="form-control" maxlength="1000" type="input" size="40" value="Hello World" placeholder="Please type a name" title="Nice Tooltip" data-hidden="no" data-required="no" ><div class="help-block with-errors hidden"></div>', $result);
         $label['123'][API_ELEMENT_ATTRIBUTE] = ['value' => 'Hello World'];
         $this->assertEquals(['disabled' => false, FE_MODE_REQUIRED => '', 'form-element' => 'name:1', 'value' => 'Hello World', 'disabled' => false, API_ELEMENT_UPDATE => $label], $json);
 
         // textarea
         $formElement['size'] = '40,10';
         $result = $build->buildInput($formElement, 'name:1', 'Hello World', $json);
-        $this->assertEquals('<textarea id="123" name="name:1" class="form-control" maxlength="255" cols="40" rows="10" placeholder="Please type a name" title="Nice Tooltip" data-hidden="no" data-required="no" >Hello World</textarea><div class="help-block with-errors hidden"></div>', $result);
+        $this->assertEquals('<textarea id="123" name="name:1" class="form-control" maxlength="1000" cols="40" rows="10" placeholder="Please type a name" title="Nice Tooltip" data-hidden="no" data-required="no" >Hello World</textarea><div class="help-block with-errors hidden"></div>', $result);
 
         $this->assertEquals(['disabled' => false, FE_MODE_REQUIRED => '', 'form-element' => 'name:1', 'value' => 'Hello World', 'disabled' => false, API_ELEMENT_UPDATE => $label], $json);
 
         $formElement['size'] = ' 40     , 10 ';
         $result = $build->buildInput($formElement, 'name:1', 'Hello World', $json);
-        $this->assertEquals('<textarea id="123" name="name:1" class="form-control" maxlength="255" cols="40" rows="10" placeholder="Please type a name" title="Nice Tooltip" data-hidden="no" data-required="no" >Hello World</textarea><div class="help-block with-errors hidden"></div>', $result);
+        $this->assertEquals('<textarea id="123" name="name:1" class="form-control" maxlength="1000" cols="40" rows="10" placeholder="Please type a name" title="Nice Tooltip" data-hidden="no" data-required="no" >Hello World</textarea><div class="help-block with-errors hidden"></div>', $result);
         $this->assertEquals(['disabled' => false, FE_MODE_REQUIRED => '', 'form-element' => 'name:1', 'value' => 'Hello World', 'disabled' => false, API_ELEMENT_UPDATE => $label], $json);
     }
 
-- 
GitLab