PHP7 State

This commit is contained in:
Dominik Liebler
2016-09-22 11:45:38 +02:00
parent 1c30978a70
commit ea8c91ac68
8 changed files with 98 additions and 126 deletions

View File

@@ -0,0 +1,33 @@
<?php
namespace DesignPatterns\Behavioral\State\Tests;
use DesignPatterns\Behavioral\State\OrderRepository;
class StateTest extends \PHPUnit_Framework_TestCase
{
public function testCanShipCreatedOrder()
{
$order = (new OrderRepository())->findById(1);
$order->shipOrder();
$this->assertEquals('shipping', $order->getStatus());
}
public function testCanCompleteShippedOrder()
{
$order = (new OrderRepository())->findById(2);
$order->completeOrder();
$this->assertEquals('completed', $order->getStatus());
}
/**
* @expectedException \Exception
*/
public function testThrowsExceptionWhenTryingToCompleteCreatedOrder()
{
$order = (new OrderRepository())->findById(1);
$order->completeOrder();
}
}