* * 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:----AfNfSReDEm0nz1ORrPOEXJ0LK+/59dXH2tEP8IDlGYM2sCuXPffC+0LX0WQ5C8MJZd8k0T/7M3mJzZMif4qAgqNr8R2qyjKAWptL7KVUTrSusfK0BXOBVwkWavQCG21hO2hxQpm4kbPELPz8BhPQK1zHSn0XPsEhz4s2ZLEaZ+rpYW8ZRjzZ8NX+Jo6Xf9XsMb4IkXTlYnza28FIpp9aqWhvWnQ75f3t7RuYFcNOH27iSnkg47bxjLKJM8zIGuwFn7SwtgfC67aDqcRbNec13yfh/rUV7sIm9WdjKP2Dyr3Sqk0bypj7CLSiTM2HJP/x1bCHOdWUYrP9BS7GjaW9LVO1lr9R5MjZPLF26yPWapa4kfIST01zfVpb9brYmfklcHR/yN37lmwqTwz1q2mSCNdjY94Fzut43072k5XkBdW0xSeCJvd/NH7bYQOCG3+pBrDKfF22bSI4aB3ETckZlsKB+oy+mZXLHmDXaqg9YUmUPrUuwm4+uAoxi0/FlvNPtL03FSgDdRQvvuakJDwiajoT6f1UiiWrH3j0JKikAkR8GFYHS1vZcnQMK3KAwYQKNq0iSjqGsTXeCg3Ap+S0QHxHLnr5eKXjtlAG3JNu7xzzCIJAm59UkutAiXbq6j85ZEKtA3UPDezoXPP/8PCv8lndsXJ+YIT6ocD+mzEEcCY=----ATTACHMENT:----NzA2NzQyMzc1NDE4ODE0MSAxODUxMDA4NjU4Mjk3NjAyIDM3NzMxNTc4ODExNTYyNjM=