diff --git a/app/code/Magento/Security/Model/UserExpiration/Validator.php b/app/code/Magento/Security/Model/UserExpiration/Validator.php
index a2211283e4cb3..b132c122cbc34 100644
--- a/app/code/Magento/Security/Model/UserExpiration/Validator.php
+++ b/app/code/Magento/Security/Model/UserExpiration/Validator.php
@@ -20,15 +20,21 @@ class Validator extends AbstractValidator
/**@var \Magento\Framework\Stdlib\DateTime\TimezoneInterface */
private $timezone;
+ /**@var \Magento\Framework\Stdlib\DateTime\DateTime */
+ private $dateTime;
+
/**
* Validator constructor.
*
* @param \Magento\Framework\Stdlib\DateTime\TimezoneInterface $timezone
+ * @param \Magento\Framework\Stdlib\DateTime\DateTime $dateTime
*/
public function __construct(
- \Magento\Framework\Stdlib\DateTime\TimezoneInterface $timezone
+ \Magento\Framework\Stdlib\DateTime\TimezoneInterface $timezone,
+ \Magento\Framework\Stdlib\DateTime\DateTime $dateTime
) {
$this->timezone = $timezone;
+ $this->dateTime = $dateTime;
}
/**
@@ -45,7 +51,7 @@ public function isValid($value)
$expiresAt = $value;
$label = 'Expiration date';
if (\Zend_Validate::is($expiresAt, 'NotEmpty')) {
- $currentTime = $this->timezone->date()->getTimestamp();
+ $currentTime = $this->dateTime->gmtTimestamp();
$utcExpiresAt = $this->timezone->convertConfigTimeToUtc($expiresAt);
$expiresAt = $this->timezone->date($utcExpiresAt)->getTimestamp();
if ($expiresAt < $currentTime) {
diff --git a/app/code/Magento/Security/Test/Mftf/Test/AdminCreateNewUserWithInvalidExpirationTest.xml b/app/code/Magento/Security/Test/Mftf/Test/AdminCreateNewUserWithInvalidExpirationTest.xml
index 4fb14742f48d7..6bcd7be784f88 100644
--- a/app/code/Magento/Security/Test/Mftf/Test/AdminCreateNewUserWithInvalidExpirationTest.xml
+++ b/app/code/Magento/Security/Test/Mftf/Test/AdminCreateNewUserWithInvalidExpirationTest.xml
@@ -15,7 +15,7 @@
-
+
diff --git a/app/code/Magento/Security/Test/Mftf/Test/AdminCreateNewUserWithValidExpirationTest.xml b/app/code/Magento/Security/Test/Mftf/Test/AdminCreateNewUserWithValidExpirationTest.xml
index acfa0464a6045..f798865ab2279 100644
--- a/app/code/Magento/Security/Test/Mftf/Test/AdminCreateNewUserWithValidExpirationTest.xml
+++ b/app/code/Magento/Security/Test/Mftf/Test/AdminCreateNewUserWithValidExpirationTest.xml
@@ -15,7 +15,7 @@
-
+
@@ -29,8 +29,6 @@
-
-
diff --git a/app/code/Magento/Security/Test/Mftf/Test/AdminLoginAdminUserWithInvalidExpiration.xml b/app/code/Magento/Security/Test/Mftf/Test/AdminLoginAdminUserWithInvalidExpiration.xml
new file mode 100644
index 0000000000000..f207d57c41084
--- /dev/null
+++ b/app/code/Magento/Security/Test/Mftf/Test/AdminLoginAdminUserWithInvalidExpiration.xml
@@ -0,0 +1,37 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/code/Magento/Security/Test/Mftf/Test/AdminLoginAdminUserWithValidExpiration.xml b/app/code/Magento/Security/Test/Mftf/Test/AdminLoginAdminUserWithValidExpiration.xml
new file mode 100644
index 0000000000000..92c538982859e
--- /dev/null
+++ b/app/code/Magento/Security/Test/Mftf/Test/AdminLoginAdminUserWithValidExpiration.xml
@@ -0,0 +1,39 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+