Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
typo3
qfq
Commits
f9cbc848
Commit
f9cbc848
authored
Feb 08, 2018
by
Elias Villiger
Browse files
Feature #5064 - Add unit tests for doDateTime
parent
4799975f
Changes
2
Show whitespace changes
Inline
Side-by-side
extension/qfq/qfq/store/FillStoreForm.php
View file @
f9cbc848
...
...
@@ -302,7 +302,7 @@ class FillStoreForm {
}
/**
* Check $value as date/datime/time value and convert it to FORMAT_DATE_INTERNATIONAL.
* Check $value as date/dat
et
ime/time value and convert it to FORMAT_DATE_INTERNATIONAL.
*
* @param array $formElement - if not set, set $formElement[FE_DATE_FORMAT]
* @param string $value - date/datetime/time value in format FORMAT_DATE_INTERNATIONAL or FORMAT_DATE_GERMAN
...
...
@@ -310,7 +310,7 @@ class FillStoreForm {
* @return string - checked datetime string
* @throws UserFormException
*/
p
rivate
function
doDateTime
(
array
&
$formElement
,
$value
)
{
p
ublic
function
doDateTime
(
array
&
$formElement
,
$value
)
{
$regexp
=
Support
::
dateTimeRegexp
(
$formElement
[
FE_TYPE
],
$formElement
[
FE_DATE_FORMAT
]);
...
...
extension/qfq/tests/phpunit/FillStoreFormTest.php
View file @
f9cbc848
...
...
@@ -19,23 +19,44 @@ class FillStoreFormTest extends \PHPUnit_Framework_TestCase {
* @throws CodeException
* @throws UserFormException
*/
public
function
testFake
()
{
# Violates SANITIZE class: SANITIZE string is always an empty string.
# Access are cached: use new variables for every test.
public
function
testDoDateTime
()
{
$formElement
=
[
FE_TYPE
=>
FE_TYPE_DATE
,
FE_DATE_FORMAT
=>
FORMAT_DATE_INTERNATIONAL
,
FE_SHOW_SECONDS
=>
0
];
$msg
=
'doDateTime fails'
;
$val
=
'2010-03-31'
;
$this
->
assertEquals
(
$val
,
FillStoreForm
::
doDateTime
(
$formElement
,
$val
),
$msg
);
$val
=
'2010-02-28'
;
$this
->
assertEquals
(
$val
,
FillStoreForm
::
doDateTime
(
$formElement
,
$val
),
$msg
);
$val
=
'2012-02-29'
;
$this
->
assertEquals
(
$val
,
FillStoreForm
::
doDateTime
(
$formElement
,
$val
),
$msg
);
$formElement
[
FE_DATE_FORMAT
]
=
FORMAT_DATE_GERMAN
;
$this
->
assertEquals
(
$val
,
FillStoreForm
::
doDateTime
(
$formElement
,
'29.02.2012'
),
$msg
);
}
# Check ''
// $this->assertEquals('', Sanitize::sanitize('', SANITIZE_ALLOW_ALNUMX), "SANITIZE_ALNUMX fails");
$this
->
assertEquals
(
''
,
''
);
/**
* @expectedException \qfq\UserFormException
*/
public
function
testDoDateTimeInvalidDate
()
{
$formElement
=
[
FE_TYPE
=>
FE_TYPE_DATE
,
FE_DATE_FORMAT
=>
FORMAT_DATE_INTERNATIONAL
,
FE_SHOW_SECONDS
=>
0
];
$val
=
'2010-02-29'
;
$this
->
assertEquals
(
$val
,
FillStoreForm
::
doDateTime
(
$formElement
,
$val
),
"doDateTime is passing when it shouldn't"
);
}
/**
* @expectedException \qfq\UserFormException
*/
public
function
testDoDateTimeInvalidDateWithTime
()
{
$formElement
=
[
FE_TYPE
=>
FE_TYPE_DATE
,
FE_DATE_FORMAT
=>
FORMAT_DATE_INTERNATIONAL
,
FE_SHOW_SECONDS
=>
0
];
$val
=
'2010-02-31 23:25'
;
$this
->
assertEquals
(
$val
,
FillStoreForm
::
doDateTime
(
$formElement
,
$val
),
"doDateTime is passing when it shouldn't"
);
}
//
// /**
// * @expectedException \qfq\UserFormException
// */
// public function testSanitizeExceptionMinMaxMissingMin() {
// Sanitize::sanitize(56, SANITIZE_ALLOW_MIN_MAX, '|45');
// }
//
}
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment