add usernamegenerator
This commit is contained in:
2 files changed
+270
No files matched your search
@@ -0,0 +1,23 @@
|
||||
<?php namespace MapGuesser\Tests\Util;
|
||||
|
||||
use MapGuesser\Util\UsernameGenerator;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
final class UsernameGeneratorTest extends TestCase
|
||||
{
|
||||
public function testCanGenerateRandomUsernameFromComponents(): void
|
||||
{
|
||||
$generator = new UsernameGenerator();
|
||||
$parts = $this->getUsernameParts($generator->generate());
|
||||
|
||||
$this->assertEquals(3, count($parts));
|
||||
$this->assertContains($parts[0], UsernameGenerator::ADJECTIVES);
|
||||
$this->assertContains($parts[1], UsernameGenerator::ADJECTIVES);
|
||||
$this->assertContains($parts[2], UsernameGenerator::NOUNS);
|
||||
}
|
||||
|
||||
private function getUsernameParts(string $username): array
|
||||
{
|
||||
return explode('-', strtolower(preg_replace('/([a-z])([A-Z])/', '$1-$2', $username)));
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user