Skip to content

Commit

Permalink
task: update unit tests
Browse files Browse the repository at this point in the history
  • Loading branch information
jonaseberle committed Nov 9, 2023
1 parent 500cb86 commit b31a973
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 57 deletions.
5 changes: 5 additions & 0 deletions Classes/ViewHelpers/ShownTrackingObjectsViewHelper.php
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,11 @@ public static function renderStatic(
$group = $arguments['group'] ?? $renderChildrenClosure();
$settings = $renderingContext->getVariableProvider()->get('settings');

return self::shownTrackingObjects($group, $settings);
}

public static function shownTrackingObjects(array $group, array $settings): array
{
$rows = [];
foreach ($group['trackingObjects'] ?? [] as $trackingObjectId) {
$rows += $settings['trackingObjects'][$trackingObjectId]['show'] ?? [];
Expand Down
71 changes: 14 additions & 57 deletions Tests/Unit/ShownTrackingObjectsViewHelperTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,10 @@
use Dmind\Cookieman\ViewHelpers\ShownTrackingObjectsViewHelper;
use PHPUnit\Framework\MockObject\MockObject;
use Prophecy\PhpUnit\ProphecyTrait;
use TYPO3\TestingFramework\Fluid\Unit\ViewHelpers\ViewHelperBaseTestcase;
use TYPO3\TestingFramework\Core\Unit\UnitTestCase;
use TYPO3Fluid\Fluid\Core\Variables\StandardVariableProvider;

class ShownTrackingObjectsViewHelperTest extends ViewHelperBaseTestcase
class ShownTrackingObjectsViewHelperTest extends UnitTestCase
{
use ProphecyTrait;

Expand All @@ -32,14 +32,6 @@ class ShownTrackingObjectsViewHelperTest extends ViewHelperBaseTestcase
*/
protected $templateVariableContainer;

protected function setUp(): void
{
parent::setUp();

$this->viewHelper = new ShownTrackingObjectsViewHelper();
$this->injectDependenciesIntoViewHelper($this->viewHelper);
}

/**
* @dataProvider settingsProvider
* @test
Expand All @@ -48,57 +40,15 @@ protected function setUp(): void
*/
public function trackingObjectsByParameter(array $settings, array $expected): void
{
$this->templateVariableContainer->expects(self::once())
->method('get')->with('settings')
->willReturn(
$settings
);
$this->renderingContext->injectViewHelperVariableContainer($this->viewHelperVariableContainer->reveal());

$this->setArgumentsUnderTest(
$this->viewHelper,
[
'group' => $settings['groups']['mandatory'],
]
$result = ShownTrackingObjectsViewHelper::shownTrackingObjects(
$settings['groups']['mandatory'],
$settings
);
$actual = $this->viewHelper->initializeArgumentsAndRender();

self::assertEquals($expected, $actual);
self::assertSame($expected, $result);
}

/**
* @dataProvider settingsProvider
* @test
* @param array $settings
* @param array $expected
*/
public function trackingObjectsByChildren(array $settings, array $expected)
{
$this->templateVariableContainer->expects(self::once())
->method('get')->with('settings')
->willReturn(
$settings
);
$this->renderingContext->injectViewHelperVariableContainer($this->viewHelperVariableContainer->reveal());

$this->viewHelper->setRenderChildrenClosure(
function () use ($settings) {
return $settings['groups']['mandatory'];
}
);

$this->setArgumentsUnderTest(
$this->viewHelper,
[
'group' => $settings['groups']['mandatory'],
]
);
$actual = $this->viewHelper->initializeArgumentsAndRender();

self::assertEquals($expected, $actual);
}

public function settingsProvider()
public function settingsProvider(): array
{
$_tests[] = [
0 => [
Expand Down Expand Up @@ -162,4 +112,11 @@ public function settingsProvider()

return $_tests;
}

protected function setUp(): void
{
parent::setUp();

$this->viewHelper = new ShownTrackingObjectsViewHelper();
}
}

0 comments on commit b31a973

Please sign in to comment.