mirror of
https://github.com/DesignPatternsPHP/DesignPatternsPHP.git
synced 2025-07-28 18:50:11 +02:00
32 lines
823 B
PHP
32 lines
823 B
PHP
<?php
|
|
|
|
namespace DesignPatterns\Behavioral\State\Tests;
|
|
|
|
use DesignPatterns\Behavioral\State\ContextOrder;
|
|
use DesignPatterns\Behavioral\State\CreateOrder;
|
|
use PHPUnit\Framework\TestCase;
|
|
|
|
class StateTest extends TestCase
|
|
{
|
|
public function testCanShipCreatedOrder()
|
|
{
|
|
$order = new CreateOrder();
|
|
$contextOrder = new ContextOrder();
|
|
$contextOrder->setState($order);
|
|
$contextOrder->done();
|
|
|
|
$this->assertEquals('shipping', $contextOrder->getStatus());
|
|
}
|
|
|
|
public function testCanCompleteShippedOrder()
|
|
{
|
|
$order = new CreateOrder();
|
|
$contextOrder = new ContextOrder();
|
|
$contextOrder->setState($order);
|
|
$contextOrder->done();
|
|
$contextOrder->done();
|
|
|
|
$this->assertEquals('completed', $contextOrder->getStatus());
|
|
}
|
|
}
|