mirror of
https://github.com/DesignPatternsPHP/DesignPatternsPHP.git
synced 2025-07-23 08:11:17 +02:00
31 lines
753 B
PHP
31 lines
753 B
PHP
<?php declare(strict_types=1);
|
|
|
|
namespace DesignPatterns\Creational\Pool\Tests;
|
|
|
|
use DesignPatterns\Creational\Pool\WorkerPool;
|
|
use PHPUnit\Framework\TestCase;
|
|
|
|
class PoolTest extends TestCase
|
|
{
|
|
public function testCanGetNewInstancesWithGet()
|
|
{
|
|
$pool = new WorkerPool();
|
|
$worker1 = $pool->get();
|
|
$worker2 = $pool->get();
|
|
|
|
$this->assertCount(2, $pool);
|
|
$this->assertNotSame($worker1, $worker2);
|
|
}
|
|
|
|
public function testCanGetSameInstanceTwiceWhenDisposingItFirst()
|
|
{
|
|
$pool = new WorkerPool();
|
|
$worker1 = $pool->get();
|
|
$pool->dispose($worker1);
|
|
$worker2 = $pool->get();
|
|
|
|
$this->assertCount(1, $pool);
|
|
$this->assertSame($worker1, $worker2);
|
|
}
|
|
}
|