‪TYPO3CMS  10.4
ScriptViewHelperTest.php
Go to the documentation of this file.
1 <?php
2 
3 declare(strict_types=1);
4 
5 /*
6  * This file is part of the TYPO3 CMS project.
7  *
8  * It is free software; you can redistribute it and/or modify it under
9  * the terms of the GNU General Public License, either version 2
10  * of the License, or any later version.
11  *
12  * For the full copyright and license information, please read the
13  * LICENSE.txt file that was distributed with this source code.
14  *
15  * The TYPO3 project - inspiring people to share!
16  */
17 
19 
20 use Prophecy\Argument;
23 use TYPO3\TestingFramework\Fluid\Unit\ViewHelpers\ViewHelperBaseTestcase;
24 
25 class ‪ScriptViewHelperTest extends ViewHelperBaseTestcase
26 {
30  protected ‪$viewHelper;
31 
32  protected function ‪setUp(): void
33  {
34  parent::setUp();
35  $this->viewHelper = new ‪ScriptViewHelper();
36  $this->injectDependenciesIntoViewHelper($this->viewHelper);
37  }
38 
42  public function ‪valueDataProvider(): array
43  {
44  return [
45  'fileadmin reference' => ['fileadmin/JavaScript/foo.js'],
46  'EXT: reference' => ['EXT:core/Resources/Public/JavaScript/foo.js'],
47  'external reference' => ['https://typo3.com/foo.js'],
48  'external reference with 1 parameter' => ['https://typo3.com/foo.js?foo=bar'],
49  'external reference with 2 parameters' => ['https://typo3.com/foo.js?foo=bar&bar=baz'],
50  ];
51  }
52 
58  public function ‪render(string $src): void
59  {
60  $assetCollector = $this->prophesize(AssetCollector::class);
61  $assetCollector
62  ->addJavaScript('test', $src, Argument::any(), Argument::any())
63  ->shouldBeCalled();
64  $this->viewHelper->injectAssetCollector($assetCollector->reveal());
65  $this->setArgumentsUnderTest($this->viewHelper, [
66  'identifier' => 'test',
67  'src' => $src,
68  ]);
69  $this->viewHelper->initializeArgumentsAndRender();
70  }
71 }
‪TYPO3\CMS\Core\Page\AssetCollector
Definition: AssetCollector.php:44
‪TYPO3\CMS\Fluid\Tests\Unit\ViewHelpers\Format\ScriptViewHelperTest
Definition: ScriptViewHelperTest.php:26
‪TYPO3\CMS\Fluid\Tests\Unit\ViewHelpers\Format\ScriptViewHelperTest\setUp
‪setUp()
Definition: ScriptViewHelperTest.php:31
‪TYPO3\CMS\Fluid\Tests\Unit\ViewHelpers\Format\ScriptViewHelperTest\$viewHelper
‪ScriptViewHelper $viewHelper
Definition: ScriptViewHelperTest.php:29
‪TYPO3\CMS\Fluid\Tests\Unit\ViewHelpers\Format
Definition: ScriptViewHelperTest.php:18
‪TYPO3\CMS\Fluid\Tests\Unit\ViewHelpers\Format\ScriptViewHelperTest\render
‪render(string $src)
Definition: ScriptViewHelperTest.php:57
‪TYPO3\CMS\Fluid\ViewHelpers\Asset\ScriptViewHelper
Definition: ScriptViewHelper.php:38
‪TYPO3\CMS\Fluid\Tests\Unit\ViewHelpers\Format\ScriptViewHelperTest\valueDataProvider
‪array valueDataProvider()
Definition: ScriptViewHelperTest.php:41