Skip to content

Commit 7f8ea8c

Browse files
committed
Add generators tests
1 parent e6163b4 commit 7f8ea8c

File tree

5 files changed

+168
-0
lines changed

5 files changed

+168
-0
lines changed
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
<?php
2+
3+
namespace PhpMiddlewareTestTest\RequestId\Generator;
4+
5+
use PhpMiddleware\RequestId\Generator\GeneratorInterface;
6+
use PhpMiddleware\RequestId\Generator\Md5Generator;
7+
use PHPUnit_Framework_TestCase;
8+
9+
class Md5GeneratorTest extends PHPUnit_Framework_TestCase
10+
{
11+
protected $generator;
12+
13+
protected function setUp()
14+
{
15+
$decoratedGenerator = $this->getMock(GeneratorInterface::class);
16+
$decoratedGenerator->method('generateRequestId')->willReturn('boo');
17+
18+
$this->generator = new Md5Generator($decoratedGenerator);
19+
}
20+
21+
public function testGetHashFromGeneratedValue()
22+
{
23+
$result = $this->generator->generateRequestId();
24+
25+
$this->assertSame('ae3e83e2fab3a7d8683d8eefabd1e74d', $result);
26+
}
27+
}
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
<?php
2+
3+
namespace PhpMiddlewareTestTest\RequestId\Generator;
4+
5+
use PhpMiddleware\RequestId\Generator\PhpUniqidGenerator;
6+
use PHPUnit_Framework_TestCase;
7+
8+
class PhpUniqidGeneratorTest extends PHPUnit_Framework_TestCase
9+
{
10+
protected $generator;
11+
12+
protected function setUp()
13+
{
14+
$this->generator = new PhpUniqidGenerator();
15+
}
16+
17+
public function testGetHashFromGeneratedValue()
18+
{
19+
$result = $this->generator->generateRequestId();
20+
21+
$this->assertNotEmpty($result);
22+
}
23+
}
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
<?php
2+
3+
namespace PhpMiddlewareTestTest\RequestId\Generator;
4+
5+
use PhpMiddleware\RequestId\Generator\GeneratorInterface;
6+
use PhpMiddleware\RequestId\Generator\PrefixedGenerator;
7+
use PHPUnit_Framework_TestCase;
8+
9+
class PrefixedGeneratorTest extends PHPUnit_Framework_TestCase
10+
{
11+
protected $decoratedGenerator;
12+
13+
protected function setUp()
14+
{
15+
$this->decoratedGenerator = $this->getMock(GeneratorInterface::class);
16+
$this->decoratedGenerator->method('generateRequestId')->willReturn('boo');
17+
}
18+
19+
public function testGetHashFromGeneratedValue()
20+
{
21+
$result = $this->getGenerator('foo_')->generateRequestId();
22+
23+
$this->assertSame('foo_boo', $result);
24+
}
25+
26+
public function getGenerator($prefix)
27+
{
28+
return new PrefixedGenerator($prefix, $this->decoratedGenerator);
29+
}
30+
}
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
<?php
2+
3+
namespace PhpMiddlewareTestTest\RequestId\Generator;
4+
5+
use PHPUnit_Framework_TestCase;
6+
use Ramsey\Uuid\UuidFactoryInterface;
7+
use Ramsey\Uuid\UuidInterface;
8+
9+
class RamseyFactoryUuidGeneratorTest extends PHPUnit_Framework_TestCase
10+
{
11+
protected $factory;
12+
protected $uuid;
13+
14+
protected function setUp()
15+
{
16+
$this->factory = $this->getMock(UuidFactoryInterface::class);
17+
18+
$this->uuid = $this->getMock(UuidInterface::class);
19+
$this->uuid->method('toString')->willReturn('uuid');
20+
}
21+
22+
public function testUuid1Generator()
23+
{
24+
$generator = new \PhpMiddleware\RequestId\Generator\RamseyUuid1Generator($this->factory);
25+
$this->factory->method('uuid1')->willReturn($this->uuid);
26+
27+
$result = $generator->generateRequestId();
28+
29+
$this->assertSame('uuid', $result);
30+
}
31+
32+
public function testUuid3Generator()
33+
{
34+
$generator = new \PhpMiddleware\RequestId\Generator\RamseyUuid3Generator($this->factory, 'ns', 'name');
35+
$this->factory->method('uuid3')->with('ns', 'name')->willReturn($this->uuid);
36+
37+
$result = $generator->generateRequestId();
38+
39+
$this->assertSame('uuid', $result);
40+
}
41+
42+
public function testUuid4Generator()
43+
{
44+
$generator = new \PhpMiddleware\RequestId\Generator\RamseyUuid4Generator($this->factory);
45+
$this->factory->method('uuid4')->willReturn($this->uuid);
46+
47+
$result = $generator->generateRequestId();
48+
49+
$this->assertSame('uuid', $result);
50+
}
51+
52+
public function testUuid5Generator()
53+
{
54+
$generator = new \PhpMiddleware\RequestId\Generator\RamseyUuid5Generator($this->factory, 'ns', 'name');
55+
$this->factory->method('uuid5')->with('ns', 'name')->willReturn($this->uuid);
56+
57+
$result = $generator->generateRequestId();
58+
59+
$this->assertSame('uuid', $result);
60+
}
61+
}
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
<?php
2+
3+
use PhpMiddleware\RequestId\Generator\RamseyUuid4StaticGenerator;
4+
use Ramsey\Uuid\Uuid;
5+
use Ramsey\Uuid\UuidInterface;
6+
7+
namespace PhpMiddlewareTestTest\RequestId\Generator;
8+
9+
class RamseyUuid4StaticGeneratorTest extends PHPUnit_Framework_TestCase
10+
{
11+
protected $generator;
12+
13+
14+
protected function setUp()
15+
{
16+
$this->generator = new RamseyUuid4StaticGenerator();
17+
}
18+
19+
public function testGenerateId()
20+
{
21+
$uuidString = $this->generator->generateRequestId();
22+
23+
$uuid = Uuid::fromString($uuidString);
24+
25+
$this->assertInstanceOf(UuidInterface::class, $uuid);
26+
}
27+
}

0 commit comments

Comments
 (0)