Files
DesignPatternsPHP/Tests/Memento/MementoTest.php
2014-04-13 19:51:37 +04:00

37 lines
873 B
PHP

<?php
namespace DesignPatterns\Tests\Memento;
use DesignPatterns\Memento;
/**
* MementoTest tests memento design pattern
*/
class MementoTest extends \PHPUnit_Framework_TestCase
{
public function testOriginator()
{
$originator = new Memento\Originator();
$originator->setState("State1");
$this->assertAttributeEquals("State1", "state", $originator);
$originator->setState("State2");
$this->assertAttributeEquals("State2", "state", $originator);
$savedState = $originator->saveToMemento();
$this->assertAttributeEquals("State2", "state", $savedState);
$originator->setState("State3");
$this->assertAttributeEquals("State3", "state", $originator);
$originator->restoreFromMemento($savedState);
$this->assertAttributeEquals("State2", "state", $originator);
}
}