PHP7 Prototype

This commit is contained in:
Dominik Liebler
2016-09-22 14:56:44 +02:00
parent 61a6f03f04
commit f4c9af503b
6 changed files with 37 additions and 44 deletions

View File

@@ -0,0 +1,27 @@
<?php
namespace DesignPatterns\Creational\Pool\Tests;
use DesignPatterns\Creational\Prototype\BarBookPrototype;
use DesignPatterns\Creational\Prototype\FooBookPrototype;
class PrototypeTest extends \PHPUnit_Framework_TestCase
{
public function testCanGetFooBook()
{
$fooPrototype = new FooBookPrototype();
$barPrototype = new BarBookPrototype();
for ($i = 0; $i < 10; $i++) {
$book = clone $fooPrototype;
$book->setTitle('Foo Book No ' . $i);
$this->assertInstanceOf('DesignPatterns\Creational\Prototype\FooBookPrototype', $book);
}
for ($i = 0; $i < 5; $i++) {
$book = clone $barPrototype;
$book->setTitle('Bar Book No ' . $i);
$this->assertInstanceOf('DesignPatterns\Creational\Prototype\BarBookPrototype', $book);
}
}
}