Mercurial > hg > isophonics-drupal-site
annotate core/modules/media/tests/src/Kernel/OEmbedIframeControllerTest.php @ 19:fa3358dc1485 tip
Add ndrum files
author | Chris Cannam |
---|---|
date | Wed, 28 Aug 2019 13:14:47 +0100 |
parents | 129ea1e6d783 |
children |
rev | line source |
---|---|
Chris@17 | 1 <?php |
Chris@17 | 2 |
Chris@17 | 3 namespace Drupal\Tests\media\Kernel; |
Chris@17 | 4 |
Chris@17 | 5 use Symfony\Component\HttpFoundation\Request; |
Chris@17 | 6 |
Chris@17 | 7 /** |
Chris@17 | 8 * @coversDefaultClass \Drupal\media\Controller\OEmbedIframeController |
Chris@17 | 9 * |
Chris@17 | 10 * @group media |
Chris@17 | 11 */ |
Chris@17 | 12 class OEmbedIframeControllerTest extends MediaKernelTestBase { |
Chris@17 | 13 |
Chris@17 | 14 /** |
Chris@17 | 15 * Data provider for testBadHashParameter(). |
Chris@17 | 16 * |
Chris@17 | 17 * @return array |
Chris@17 | 18 */ |
Chris@17 | 19 public function providerBadHashParameter() { |
Chris@17 | 20 return [ |
Chris@17 | 21 'no hash' => [ |
Chris@17 | 22 '', |
Chris@17 | 23 ], |
Chris@17 | 24 'invalid hash' => [ |
Chris@17 | 25 $this->randomString(), |
Chris@17 | 26 ], |
Chris@17 | 27 ]; |
Chris@17 | 28 } |
Chris@17 | 29 |
Chris@17 | 30 /** |
Chris@17 | 31 * Tests validation of the 'hash' query string parameter. |
Chris@17 | 32 * |
Chris@17 | 33 * @param string $hash |
Chris@17 | 34 * The 'hash' query string parameter. |
Chris@17 | 35 * |
Chris@17 | 36 * @dataProvider providerBadHashParameter |
Chris@17 | 37 * |
Chris@17 | 38 * @covers ::render |
Chris@17 | 39 */ |
Chris@17 | 40 public function testBadHashParameter($hash) { |
Chris@17 | 41 /** @var callable $controller */ |
Chris@17 | 42 $controller = $this->container |
Chris@17 | 43 ->get('controller_resolver') |
Chris@17 | 44 ->getControllerFromDefinition('\Drupal\media\Controller\OEmbedIframeController::render'); |
Chris@17 | 45 |
Chris@17 | 46 $this->assertInternalType('callable', $controller); |
Chris@17 | 47 |
Chris@17 | 48 $this->setExpectedException('\Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException', 'This resource is not available'); |
Chris@17 | 49 $request = new Request([ |
Chris@17 | 50 'url' => 'https://example.com/path/to/resource', |
Chris@17 | 51 'hash' => $hash, |
Chris@17 | 52 ]); |
Chris@17 | 53 $controller($request); |
Chris@17 | 54 } |
Chris@17 | 55 |
Chris@17 | 56 } |