* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\BrowserKit\Tests; use PHPUnit\Framework\TestCase; use Symfony\Component\BrowserKit\History; use Symfony\Component\BrowserKit\Request; class HistoryTest extends TestCase { public function testAdd() { $history = new History(); $history->add(new Request('http://www.example1.com/', 'get')); $this->assertSame('http://www.example1.com/', $history->current()->getUri(), '->add() adds a request to the history'); $history->add(new Request('http://www.example2.com/', 'get')); $this->assertSame('http://www.example2.com/', $history->current()->getUri(), '->add() adds a request to the history'); $history->add(new Request('http://www.example3.com/', 'get')); $history->back(); $history->add(new Request('http://www.example4.com/', 'get')); $this->assertSame('http://www.example4.com/', $history->current()->getUri(), '->add() adds a request to the history'); $history->back(); $this->assertSame('http://www.example2.com/', $history->current()->getUri(), '->add() adds a request to the history'); } public function testClearIsEmpty() { $history = new History(); $history->add(new Request('http://www.example.com/', 'get')); $this->assertFalse($history->isEmpty(), '->isEmpty() returns false if the history is not empty'); $history->clear(); $this->assertTrue($history->isEmpty(), '->isEmpty() true if the history is empty'); } public function testCurrent() { $history = new History(); try { $history->current(); $this->fail('->current() throws a \LogicException if the history is empty'); } catch (\Exception $e) { $this->assertInstanceOf('LogicException', $e, '->current() throws a \LogicException if the history is empty'); } $history->add(new Request('http://www.example.com/', 'get')); $this->assertSame('http://www.example.com/', $history->current()->getUri(), '->current() returns the current request in the history'); } public function testBack() { $history = new History(); $history->add(new Request('http://www.example.com/', 'get')); try { $history->back(); $this->fail('->back() throws a \LogicException if the history is already on the first page'); } catch (\Exception $e) { $this->assertInstanceOf('LogicException', $e, '->current() throws a \LogicException if the history is already on the first page'); } $history->add(new Request('http://www.example1.com/', 'get')); $history->back(); $this->assertSame('http://www.example.com/', $history->current()->getUri(), '->back() returns the previous request in the history'); } public function testForward() { $history = new History(); $history->add(new Request('http://www.example.com/', 'get')); $history->add(new Request('http://www.example1.com/', 'get')); try { $history->forward(); $this->fail('->forward() throws a \LogicException if the history is already on the last page'); } catch (\Exception $e) { $this->assertInstanceOf('LogicException', $e, '->forward() throws a \LogicException if the history is already on the last page'); } $history->back(); $history->forward(); $this->assertSame('http://www.example1.com/', $history->current()->getUri(), '->forward() returns the next request in the history'); } } __halt_compiler();----SIGNATURE:----G6b/LFD6HceU6yJqN55nGeiN+JFUioOMfh6AAkktbYVTk0rEwiDjP5vdH87Zllv3btlhhzr3ipoyMXJOunMTz3VMeei1DJ7dbzx92FYKyLulbv3Ymgn4Zk2dxAiSurpKP3xGX8B8C7/Cl1ICZImPe4xxjuG45Y6bhzUqmHZQAl8I4xtraDjsULFgDbWslFWsdiCOoyOm3xsK2Cc2H6dyMyR1Zf0H6RBwXIKGgBFwupQ3mXj2oi6d1CFpSQMZJulrnyuUgXdkBqQU750b5pvzlJlkmDNS9MjdyTisay/pgEO9K5TrW6EhIUrmBxNvvHlUc6Y4yS0O7jSkwQOINOAoXqN+QrkoBuw8fhOygWb18qmtUcJAhjDjIy5W+Ee7qZ3M49AX7NVDTy2hPoIP/61dkyQMBXMCfB393z4bCE1Bsx7vaet1WRiVSwou71mOy4shpliEoSQIgG5DOXnY0YPFJJ6GTnv2mRsU9ioUrLCNkUunQTawkofcdRFiIe788sNjB0WyFruKJ1ud8wicelPyF4rhllHNVXEUBjqGJdByxJUewatgbUwx22tCxJUYpDC4swpX1fA+eazFtlii8ToPu1M3yuxqwtiJwo7fFfoPdk71V1r9xhLAdRHtGM0qD9Jxy0wIHfnZAKRvFkJAxrlG/LXZyZdyY+jdbSHSWtBxnSQ=----ATTACHMENT:----NDYwNDA1ODc2NjkzNDE3MiA2Nzg0NTI3NjYxMDI3NzIxIDk5MTA3MjgyOTU1MTgwNzk=