summaryrefslogtreecommitdiff
path: root/tests/units/Validator/PasswordResetValidatorTest.php
diff options
context:
space:
mode:
Diffstat (limited to 'tests/units/Validator/PasswordResetValidatorTest.php')
-rw-r--r--tests/units/Validator/PasswordResetValidatorTest.php64
1 files changed, 64 insertions, 0 deletions
diff --git a/tests/units/Validator/PasswordResetValidatorTest.php b/tests/units/Validator/PasswordResetValidatorTest.php
new file mode 100644
index 00000000..4af6c75e
--- /dev/null
+++ b/tests/units/Validator/PasswordResetValidatorTest.php
@@ -0,0 +1,64 @@
+<?php
+
+require_once __DIR__.'/../Base.php';
+
+use Kanboard\Model\User;
+use Kanboard\Validator\PasswordResetValidator;
+
+class PasswordResetValidatorTest extends Base
+{
+ public function testValidateModification()
+ {
+ $validator = new PasswordResetValidator($this->container);
+ list($valid, ) = $validator->validateModification(array('password' => 'test123', 'confirmation' => 'test123'));
+ $this->assertTrue($valid);
+ }
+
+ public function testValidateModificationWithWrongPasswords()
+ {
+ $validator = new PasswordResetValidator($this->container);
+ list($valid, ) = $validator->validateModification(array('password' => 'test123', 'confirmation' => 'test456'));
+ $this->assertFalse($valid);
+ }
+
+ public function testValidateModificationWithPasswordTooShort()
+ {
+ $validator = new PasswordResetValidator($this->container);
+ list($valid, ) = $validator->validateModification(array('password' => 'test', 'confirmation' => 'test'));
+ $this->assertFalse($valid);
+ }
+
+ public function testValidateCreation()
+ {
+ $this->container['sessionStorage']->captcha = 'test';
+
+ $validator = new PasswordResetValidator($this->container);
+ list($valid,) = $validator->validateCreation(array('username' => 'foobar', 'captcha' => 'test'));
+ $this->assertTrue($valid);
+ }
+
+ public function testValidateCreationWithNoUsername()
+ {
+ $this->container['sessionStorage']->captcha = 'test';
+
+ $validator = new PasswordResetValidator($this->container);
+ list($valid,) = $validator->validateCreation(array('captcha' => 'test'));
+ $this->assertFalse($valid);
+ }
+
+ public function testValidateCreationWithWrongCaptcha()
+ {
+ $this->container['sessionStorage']->captcha = 'test123';
+
+ $validator = new PasswordResetValidator($this->container);
+ list($valid,) = $validator->validateCreation(array('username' => 'foobar', 'captcha' => 'test'));
+ $this->assertFalse($valid);
+ }
+
+ public function testValidateCreationWithMissingCaptcha()
+ {
+ $validator = new PasswordResetValidator($this->container);
+ list($valid,) = $validator->validateCreation(array('username' => 'foobar', 'captcha' => 'test'));
+ $this->assertFalse($valid);
+ }
+}