diff --git a/extension/qfq/qfq/store/FillStoreForm.php b/extension/qfq/qfq/store/FillStoreForm.php
index bd36ddc288482ef6c6bf3e269d8104b952c7aca0..87331cf7b611738eaa50dea3fbaeeb2ec511eee2 100644
--- a/extension/qfq/qfq/store/FillStoreForm.php
+++ b/extension/qfq/qfq/store/FillStoreForm.php
@@ -302,7 +302,7 @@ class FillStoreForm {
     }
 
     /**
-     * Check  $value as date/datime/time value and convert it to FORMAT_DATE_INTERNATIONAL.
+     * Check  $value as date/datetime/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
      */
-    private function doDateTime(array &$formElement, $value) {
+    public function doDateTime(array &$formElement, $value) {
 
         $regexp = Support::dateTimeRegexp($formElement[FE_TYPE], $formElement[FE_DATE_FORMAT]);
 
diff --git a/extension/qfq/tests/phpunit/FillStoreFormTest.php b/extension/qfq/tests/phpunit/FillStoreFormTest.php
index d9a471bbbfef20c374742f76a5ebd07ea8b09abe..1cbf87943c7287b765b8d522ca84880d792160a6 100644
--- a/extension/qfq/tests/phpunit/FillStoreFormTest.php
+++ b/extension/qfq/tests/phpunit/FillStoreFormTest.php
@@ -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');
-//    }
-//
+
 
 }