Skip to content

Commit 0a991e7

Browse files
committed
Update tests
Signed-off-by: Jack Cherng <[email protected]>
1 parent f51ed1c commit 0a991e7

File tree

1 file changed

+50
-38
lines changed

1 file changed

+50
-38
lines changed

tests/Renderer/RendererTest.php

+50-38
Original file line numberDiff line numberDiff line change
@@ -96,41 +96,54 @@ public function testSetOptionsWithInvalidResultForIdenticals(): void
9696
*/
9797
public function testHtmlRendererRenderWithResultFromJsonRenderer(): void
9898
{
99-
$htmlRenderer = RendererFactory::make('Inline');
100-
101-
// test "outputTagAsString" is false
102-
$jsonResult = DiffHelper::calculate(
103-
'old marker',
104-
'new marker',
105-
'Json',
106-
[],
107-
['outputTagAsString' => false]
108-
);
109-
$jsonArray = \json_decode($jsonResult, true);
110-
$inlineResult = $htmlRenderer->renderArray($jsonArray);
111-
112-
static::assertStringContainsString(
113-
'><del>old</del> marker<',
114-
$inlineResult,
115-
"HTML renderers should be able to render with JSON result. ('outputTagAsString' => false)"
116-
);
117-
118-
// test "outputTagAsString" is true
119-
$jsonResult = DiffHelper::calculate(
120-
'old marker',
121-
'new marker',
122-
'Json',
123-
[],
124-
['outputTagAsString' => true]
125-
);
126-
$jsonArray = \json_decode($jsonResult, true);
127-
$inlineResult = $htmlRenderer->renderArray($jsonArray);
128-
129-
static::assertStringContainsString(
130-
'><del>old</del> marker<',
131-
$inlineResult,
132-
"HTML renderers should be able to render with JSON result. ('outputTagAsString' => true)"
133-
);
99+
static $rendererNames = ['Inline', 'SideBySide', 'Json'];
100+
101+
$old = '_TEST_MARKER_OLD_';
102+
$new = '_TEST_MARKER_NEW_';
103+
$differOptions = [];
104+
$rendererOptions = [];
105+
106+
foreach ($rendererNames as $rendererName) {
107+
$renerer = RendererFactory::make($rendererName, $rendererOptions);
108+
109+
$goldenResult = DiffHelper::calculate(
110+
$old,
111+
$new,
112+
$rendererName,
113+
$differOptions,
114+
$rendererOptions
115+
);
116+
117+
// test "outputTagAsString" is false
118+
$jsonResult = DiffHelper::calculate(
119+
$old,
120+
$new,
121+
'Json',
122+
$differOptions,
123+
['outputTagAsString' => false] + $rendererOptions
124+
);
125+
126+
static::assertSame(
127+
$goldenResult,
128+
$renerer->renderArray(\json_decode($jsonResult, true)),
129+
"HTML renderers should be able to render with JSON result. ('outputTagAsString' => false)"
130+
);
131+
132+
// test "outputTagAsString" is true
133+
$jsonResult = DiffHelper::calculate(
134+
$old,
135+
$new,
136+
'Json',
137+
$differOptions,
138+
['outputTagAsString' => true] + $rendererOptions
139+
);
140+
141+
static::assertSame(
142+
$goldenResult,
143+
$renerer->renderArray(\json_decode($jsonResult, true)),
144+
"HTML renderers should be able to render with JSON result. ('outputTagAsString' => true)"
145+
);
146+
}
134147
}
135148

136149
/**
@@ -142,10 +155,9 @@ public function testTextRendererRenderWithResultFromJsonRenderer(): void
142155
{
143156
static::expectException(UnsupportedFunctionException::class);
144157

145-
$jsonResult = DiffHelper::calculate('old marker', 'new marker', 'Json');
146-
$jsonArray = \json_decode($jsonResult, true);
158+
$jsonResult = DiffHelper::calculate('_TEST_MARKER_OLD_', '_TEST_MARKER_NEW_', 'Json');
147159

148160
$textRenderer = RendererFactory::make('Unified');
149-
$UnifiedResult = $textRenderer->renderArray($jsonArray);
161+
$UnifiedResult = $textRenderer->renderArray(\json_decode($jsonResult, true));
150162
}
151163
}

0 commit comments

Comments
 (0)