Skip to content

Commit b6a2810

Browse files
committed
test: added missing tests for Twig extenstions
1 parent 31ac751 commit b6a2810

9 files changed

+103
-0
lines changed

tests/assets/templates/template.twig

Whitespace-only changes.

tests/phpMyFAQ/Template/FaqTwigExtensionTest.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77

88
class FaqTwigExtensionTest extends TestCase
99
{
10+
private FaqTwigExtension $extension;
11+
1012
protected function setUp(): void
1113
{
1214
$this->extension = new FaqTwigExtension();

tests/phpMyFAQ/Template/FormatBytesTwigExtensionTest.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77

88
class FormatBytesTwigExtensionTest extends TestCase
99
{
10+
private FormatBytesTwigExtension $extension;
11+
1012
protected function setUp(): void
1113
{
1214
$this->extension = new FormatBytesTwigExtension();

tests/phpMyFAQ/Template/FormatDateTwigExtensionTest.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77

88
class FormatDateTwigExtensionTest extends TestCase
99
{
10+
private FormatDateTwigExtension $extension;
11+
1012
protected function setUp(): void
1113
{
1214
$this->extension = new FormatDateTwigExtension();

tests/phpMyFAQ/Template/IsoDateTwigExtensionTest.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77

88
class IsoDateTwigExtensionTest extends TestCase
99
{
10+
private IsoDateTwigExtension $extension;
11+
1012
protected function setUp(): void
1113
{
1214
$this->extension = new IsoDateTwigExtension();
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
<?php
2+
3+
namespace phpMyFAQ\Template;
4+
5+
use PHPUnit\Framework\TestCase;
6+
use Twig\TwigFilter;
7+
use Twig\TwigFunction;
8+
9+
class LanguageCodeTwigExtensionTest extends TestCase
10+
{
11+
private LanguageCodeTwigExtension $extension;
12+
13+
protected function setUp(): void
14+
{
15+
$this->extension = new LanguageCodeTwigExtension();
16+
}
17+
18+
public function testGetFunctions(): void
19+
{
20+
$functions = $this->extension->getFunctions();
21+
22+
$this->assertCount(1, $functions);
23+
24+
$this->assertInstanceOf(TwigFunction::class, $functions[0]);
25+
$this->assertEquals('getFromLanguageCode', $functions[0]->getName());
26+
}
27+
28+
public function testGetFilters(): void
29+
{
30+
$filters = $this->extension->getFilters();
31+
32+
$this->assertCount(1, $filters);
33+
34+
$this->assertInstanceOf(TwigFilter::class, $filters[0]);
35+
$this->assertEquals('getFromLanguageCode', $filters[0]->getName());
36+
}
37+
}

tests/phpMyFAQ/Template/PermissionTranslationTwigExtensionTest.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77

88
class PermissionTranslationTwigExtensionTest extends TestCase
99
{
10+
private PermissionTranslationTwigExtension $extension;
11+
1012
protected function setUp(): void
1113
{
1214
$this->extension = new PermissionTranslationTwigExtension();
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
<?php
2+
3+
namespace phpMyFAQ\Template;
4+
5+
use PHPUnit\Framework\TestCase;
6+
use Twig\TemplateWrapper;
7+
8+
class TwigWrapperTest extends TestCase
9+
{
10+
private TwigWrapper $twigWrapper;
11+
12+
/**
13+
*/
14+
protected function setUp(): void
15+
{
16+
$this->twigWrapper = new TwigWrapper(PMF_TEST_DIR . '/assets/templates');
17+
}
18+
19+
/**
20+
* @throws TemplateException
21+
*/
22+
public function testLoadTemplate(): void
23+
{
24+
$templateFile = 'template.twig';
25+
26+
$result = $this->twigWrapper->loadTemplate($templateFile);
27+
28+
$this->assertInstanceOf(TemplateWrapper::class, $result);
29+
}
30+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
<?php
2+
3+
namespace phpMyFAQ\Template;
4+
5+
use PHPUnit\Framework\TestCase;
6+
use Twig\TwigFilter;
7+
8+
class UserNameTwigExtensionTest extends TestCase
9+
{
10+
private UserNameTwigExtension $extension;
11+
12+
protected function setUp(): void
13+
{
14+
$this->extension = new UserNameTwigExtension();
15+
}
16+
17+
public function testGetFilters(): void
18+
{
19+
$filters = $this->extension->getFilters();
20+
21+
$this->assertCount(1, $filters);
22+
23+
$this->assertInstanceOf(TwigFilter::class, $filters[0]);
24+
$this->assertEquals('userName', $filters[0]->getName());
25+
}
26+
}

0 commit comments

Comments
 (0)