-
-
Notifications
You must be signed in to change notification settings - Fork 115
Expand file tree
/
Copy pathPresenter.formatLayoutTemplateFiles.phpt
More file actions
77 lines (57 loc) · 2.13 KB
/
Presenter.formatLayoutTemplateFiles.phpt
File metadata and controls
77 lines (57 loc) · 2.13 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
<?php
/**
* Test: Presenter::formatLayoutTemplateFiles.
*/
declare(strict_types=1);
use Tester\Assert;
require __DIR__ . '/../bootstrap.php';
require __DIR__ . '/one/Presenter1.php';
require __DIR__ . '/two/Presenter2.php';
test(function () { // with subdir templates
$presenter = new Presenter1;
$presenter->setParent(null, 'One');
$presenter->setLayout('my');
Assert::same([
__DIR__ . DIRECTORY_SEPARATOR . 'one/templates/One/@my.latte',
__DIR__ . DIRECTORY_SEPARATOR . 'one/templates/One.@my.latte',
__DIR__ . DIRECTORY_SEPARATOR . 'one/templates/@my.latte',
], $presenter->formatLayoutTemplateFiles());
});
test(function () { // without subdir templates & parent presenter
$presenter = new Presenter2;
$presenter->setParent(null, 'Two');
Assert::same([
__DIR__ . '/templates/Two/@layout.latte',
__DIR__ . '/templates/Two.@layout.latte',
__DIR__ . '/templates/@layout.latte',
__DIR__ . DIRECTORY_SEPARATOR . 'one/templates/@layout.latte',
], $presenter->formatLayoutTemplateFiles());
});
test(function () { // with module & subdir templates
$presenter = new Presenter1;
$presenter->setParent(null, 'Module:SubModule:One');
Assert::same([
__DIR__ . DIRECTORY_SEPARATOR . 'one/templates/One/@layout.latte',
__DIR__ . DIRECTORY_SEPARATOR . 'one/templates/One.@layout.latte',
__DIR__ . DIRECTORY_SEPARATOR . 'one/templates/@layout.latte',
], $presenter->formatLayoutTemplateFiles());
});
test(function () { // with module & without subdir templates & parent presenter
$presenter = new Presenter2;
$presenter->setParent(null, 'Module:SubModule:Two');
Assert::same([
__DIR__ . '/templates/Two/@layout.latte',
__DIR__ . '/templates/Two.@layout.latte',
__DIR__ . '/templates/@layout.latte',
dirname(__DIR__) . '/templates/@layout.latte',
dirname(dirname(__DIR__)) . '/templates/@layout.latte',
__DIR__ . DIRECTORY_SEPARATOR . 'one/templates/@layout.latte',
], $presenter->formatLayoutTemplateFiles());
});
test(function () { // direct file
$presenter = new Presenter2;
$presenter->setLayout(__DIR__ . '/file.latte');
Assert::same([
__DIR__ . '/file.latte',
], $presenter->formatLayoutTemplateFiles());
});