Skip to content

Commit 6c8a091

Browse files
committed
Fix the unit tests
1 parent c32c5fe commit 6c8a091

5 files changed

Lines changed: 52 additions & 37 deletions

File tree

composer.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,5 +52,8 @@
5252
"php-http/discovery": true,
5353
"terminal42/contao-build-tools": true
5454
}
55+
},
56+
"scripts": {
57+
"unit-tests": "@php vendor/bin/phpunit"
5558
}
5659
}

tests/DependencyInjection/CodefogTagsExtensionTest.php

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,6 @@ public function testLoad(): void
3939
);
4040

4141
// Listeners
42-
$this->assertTrue($container->hasDefinition('codefog_tags.listener.insert_tags'));
4342
$this->assertTrue($container->hasDefinition('codefog_tags.listener.tag_manager'));
4443
$this->assertTrue($container->hasDefinition('codefog_tags.listener.data_container.tag'));
4544

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
namespace Codefog\TagsBundle\Test\EventListener;
6+
7+
use Codefog\TagsBundle\EventListener\AddAssetsListener;
8+
use Contao\CoreBundle\Routing\ScopeMatcher;
9+
use PHPUnit\Framework\TestCase;
10+
use Symfony\Component\Asset\Packages;
11+
use Symfony\Component\HttpFoundation\Request;
12+
use Symfony\Component\HttpFoundation\RequestStack;
13+
14+
final class AddAssetsListenerTest extends TestCase
15+
{
16+
public function testInvoke(): void
17+
{
18+
$GLOBALS['TL_CSS'] = [];
19+
$GLOBALS['TL_JAVASCRIPT'] = [];
20+
21+
$this->mockListener()();
22+
23+
$this->assertContains('bundles/codefog_tags/tags-widget.css', $GLOBALS['TL_CSS']);
24+
$this->assertContains('bundles/codefog_tags/tags-widget.js', $GLOBALS['TL_JAVASCRIPT']);
25+
}
26+
27+
private function mockListener(): AddAssetsListener
28+
{
29+
$packages = $this->createMock(Packages::class);
30+
$packages
31+
->method('getUrl')
32+
->willReturnCallback(static function (string $path, string $packageName) {
33+
return sprintf('bundles/%s/%s', $packageName, $path);
34+
})
35+
;
36+
37+
$requestStack = $this->createConfiguredMock(RequestStack::class, [
38+
'getCurrentRequest' => new Request(),
39+
]);
40+
41+
$scopeMatcher = $this->createConfiguredMock(ScopeMatcher::class, [
42+
'isBackendRequest' => true,
43+
]);
44+
45+
return new AddAssetsListener($packages, $requestStack, $scopeMatcher);
46+
}
47+
}

tests/EventListener/TagManagerListenerTest.php

Lines changed: 2 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,8 @@
88
use Codefog\TagsBundle\Manager\ManagerInterface;
99
use Codefog\TagsBundle\ManagerRegistry;
1010
use Codefog\TagsBundle\Test\Fixtures\DummyManager;
11-
use Contao\CoreBundle\Routing\ScopeMatcher;
1211
use Contao\DataContainer;
1312
use PHPUnit\Framework\TestCase;
14-
use Symfony\Component\HttpFoundation\Request;
15-
use Symfony\Component\HttpFoundation\RequestStack;
1613

1714
final class TagManagerListenerTest extends TestCase
1815
{
@@ -28,8 +25,6 @@ public function testOnLoadDataContainer(): void
2825
],
2926
];
3027

31-
$GLOBALS['TL_CSS'] = [];
32-
$GLOBALS['TL_JAVASCRIPT'] = [];
3328
$GLOBALS['TL_CONFIG']['debugMode'] = false;
3429

3530
$this->mockListener()->onLoadDataContainer('tl_table');
@@ -47,13 +42,6 @@ public function testOnLoadDataContainer(): void
4742
],
4843
$GLOBALS['TL_DCA']['tl_table']['fields'],
4944
);
50-
51-
$this->assertContains('bundles/codefogtags/selectize.min.css', $GLOBALS['TL_CSS']);
52-
$this->assertContains('bundles/codefogtags/backend.min.css', $GLOBALS['TL_CSS']);
53-
$this->assertContains('assets/jquery/js/jquery.min.js', $GLOBALS['TL_JAVASCRIPT']);
54-
$this->assertContains('bundles/codefogtags/selectize.min.js', $GLOBALS['TL_JAVASCRIPT']);
55-
$this->assertContains('bundles/codefogtags/widget.min.js', $GLOBALS['TL_JAVASCRIPT']);
56-
$this->assertContains('bundles/codefogtags/backend.min.js', $GLOBALS['TL_JAVASCRIPT']);
5745
}
5846

5947
public function testOnLoadDataContainerNoFields(): void
@@ -66,15 +54,7 @@ public function testOnLoadDataContainerNoFields(): void
6654
->willReturn(new DummyManager())
6755
;
6856

69-
$requestStack = $this->createConfiguredMock(RequestStack::class, [
70-
'getCurrentRequest' => new Request(),
71-
]);
72-
73-
$scopeMatcher = $this->createConfiguredMock(ScopeMatcher::class, [
74-
'isBackendRequest' => true,
75-
]);
76-
77-
$listener = new TagManagerListener($registry, $requestStack, $scopeMatcher);
57+
$listener = new TagManagerListener($registry);
7858
$listener->onLoadDataContainer('tl_table');
7959

8060
$this->assertSame([], $GLOBALS['TL_DCA']['tl_table']);
@@ -90,7 +70,6 @@ public function testOnFieldSaveCallback(): void
9070

9171
$dataContainer = $this->createMock(DataContainer::class);
9272
$dataContainer
93-
->expects($this->exactly(2))
9473
->method('__get')
9574
->willReturnMap([
9675
['table', 'tl_table'],
@@ -111,7 +90,6 @@ public function testOnFieldSaveCallbackManagerUnsupported(): void
11190

11291
$dataContainer = $this->createMock(DataContainer::class);
11392
$dataContainer
114-
->expects($this->exactly(2))
11593
->method('__get')
11694
->willReturnMap([
11795
['table', 'tl_table'],
@@ -134,7 +112,6 @@ public function testOnOptionsCallback(): void
134112

135113
$dataContainer = $this->createMock(DataContainer::class);
136114
$dataContainer
137-
->expects($this->exactly(2))
138115
->method('__get')
139116
->willReturnMap([
140117
['table', 'tl_table'],
@@ -155,7 +132,6 @@ public function testOnOptionsCallbackManagerUnsupported(): void
155132

156133
$dataContainer = $this->createMock(DataContainer::class);
157134
$dataContainer
158-
->expects($this->exactly(2))
159135
->method('__get')
160136
->willReturnMap([
161137
['table', 'tl_table'],
@@ -174,14 +150,6 @@ private function mockListener($manager = null): TagManagerListener
174150
'get' => $manager ?? new DummyManager(),
175151
]);
176152

177-
$requestStack = $this->createConfiguredMock(RequestStack::class, [
178-
'getCurrentRequest' => new Request(),
179-
]);
180-
181-
$scopeMatcher = $this->createConfiguredMock(ScopeMatcher::class, [
182-
'isBackendRequest' => true,
183-
]);
184-
185-
return new TagManagerListener($registry, $requestStack, $scopeMatcher);
153+
return new TagManagerListener($registry);
186154
}
187155
}

tests/Manager/DefaultManagerTest.php

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,6 @@ public function testGetFilterOptionsWithPredefinedTagsSource(): void
142142

143143
$dataContainer = $this->createMock(DataContainer::class);
144144
$dataContainer
145-
->expects($this->exactly(2))
146145
->method('__get')
147146
->willReturnMap([
148147
['table', 'tl_table'],
@@ -183,7 +182,6 @@ public function testGetSourceRecordsCountWithPredefinedTagsSource(): void
183182

184183
$dataContainer = $this->createMock(DataContainer::class);
185184
$dataContainer
186-
->expects($this->exactly(2))
187185
->method('__get')
188186
->willReturnMap([
189187
['table', 'tl_table'],

0 commit comments

Comments
 (0)