Source of file RedirectedURLHandlerTest.php
Size: 2,275 Bytes - Last Modified: 2021-12-23T10:33:52+00:00
/var/www/docs.ssmods.com/process/src/tests/RedirectedURLHandlerTest.php
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 | <?php namespace SilverStripe\RedirectedURLs\Test; use ReflectionMethod; use SilverStripe\Control\Director; use SilverStripe\Dev\FunctionalTest; use SilverStripe\RedirectedURLs\Extension\RedirectedURLHandler; use SilverStripe\RedirectedURLs\Model\RedirectedURL; /** * @package redirectedurls * @subpackage tests */ class RedirectedURLHandlerTest extends FunctionalTest { protected static $fixture_file = 'RedirectedURLHandlerTest.yml'; protected function setUp() { parent::setUp(); $this->autoFollowRedirection = false; } public function testHandleURLRedirectionFromBase() { $redirect = $this->objFromFixture(RedirectedURL::class, 'redirect-signups'); $response = $this->get('/signups/'); $this->assertEquals(301, $response->getStatusCode()); $this->assertEquals( Director::absoluteURL($redirect->To), $response->getHeader('Location') ); } public function testHanldeRootRedirectWithExtension() { $redirect = $this->objFromFixture(RedirectedURL::class, 'redirect-root-extension'); $response = $this->get($redirect->FromBase); $this->assertEquals(301, $response->getStatusCode()); $this->assertEquals( Director::absoluteURL($redirect->To), $response->getHeader('Location') ); } public function testHandleURLRedirectionWithQueryString() { $response = $this->get('query-test-with-query-string?foo=bar'); $expected = $this->objFromFixture(RedirectedURL::class, 'redirect-with-query'); $this->assertEquals(301, $response->getStatusCode()); $this->assertEquals( Director::absoluteURL($expected->To), $response->getHeader('Location') ); } public function testArrayToLowercase() { $array = array('Foo' => 'bar', 'baz' => 'QUX'); $cont = new RedirectedURLHandler(); $arrayToLowercaseMethod = new ReflectionMethod(RedirectedURLHandler::class, 'arrayToLowercase'); $arrayToLowercaseMethod->setAccessible(true); $this->assertEquals( array('foo' => 'bar', 'baz' => 'qux'), $arrayToLowercaseMethod->invoke($cont, $array) ); } } |