ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
All Data Structures Namespaces Files Functions Variables Modules Pages
ilMd5PasswordEncoderTest.php
Go to the documentation of this file.
1 <?php declare(strict_types=1);
2 /* Copyright (c) 1998-2014 ILIAS open source, Extended GPL, see docs/LICENSE */
3 
4 require_once 'Services/Password/classes/encoders/class.ilMd5PasswordEncoder.php';
5 require_once 'Services/Password/test/ilPasswordBaseTest.php';
6 
13 {
18  {
19  $encoder = new ilMd5PasswordEncoder();
20  $this->assertInstanceOf('ilMd5PasswordEncoder', $encoder);
21  return $encoder;
22  }
23 
30  {
31  $this->assertSame(md5('password'), $encoder->encodePassword('password', ''));
32  }
33 
39  public function testPasswordCanBeVerified(ilMd5PasswordEncoder $encoder) : void
40  {
41  $this->assertTrue($encoder->isPasswordValid(md5('password'), 'password', ''));
42  }
43 
48  public function testEncoderDoesNotRelyOnSalts(ilMd5PasswordEncoder $encoder) : void
49  {
50  $this->assertFalse($encoder->requiresSalt());
51  }
52 
58  {
59  $this->assertFalse($encoder->requiresReencoding('hello'));
60  }
61 
68  ilMd5PasswordEncoder $encoder
69  ) : void {
70  $this->expectException(ilPasswordException::class);
71  $encoder->encodePassword(str_repeat('a', 5000), '');
72  }
73 
80  ilMd5PasswordEncoder $encoder
81  ) : void {
82  $this->assertFalse($encoder->isPasswordValid('encoded', str_repeat('a', 5000), ''));
83  }
84 
89  public function testNameShouldBeMd5(ilMd5PasswordEncoder $encoder) : void
90  {
91  $this->assertEquals('md5', $encoder->getName());
92  }
93 }
testNameShouldBeMd5(ilMd5PasswordEncoder $encoder)
testInstanceCanBeCreated
testEncoderDoesNotRelyOnSalts(ilMd5PasswordEncoder $encoder)
testInstanceCanBeCreated
testEncoderDoesNotSupportReencoding(ilMd5PasswordEncoder $encoder)
testInstanceCanBeCreated
encodePassword(string $raw, string $salt)
testPasswordVerificationShouldFailIfTheRawPasswordExceedsTheSupportedLength(ilMd5PasswordEncoder $encoder)
testInstanceCanBeCreated
testPasswordCanBeVerified(ilMd5PasswordEncoder $encoder)
testInstanceCanBeCreated
testPasswordShouldBeCorrectlyEncoded(ilMd5PasswordEncoder $encoder)
testInstanceCanBeCreated
testExceptionIsRaisedIfThePasswordExceedsTheSupportedLengthOnEncoding(ilMd5PasswordEncoder $encoder)
testInstanceCanBeCreated
isPasswordValid(string $encoded, string $raw, string $salt)