Skip to content

Commit fe22f6d

Browse files
[BUGFIX] Replace usage of UnifiedDiffOutputBuilder with StrictUnifiedDiffOutputBuilder
Resolves: #408
1 parent acebbd2 commit fe22f6d

3 files changed

Lines changed: 8 additions & 13 deletions

File tree

packages/fractor-doc-generator/src/Differ/DifferFactory.php

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,20 +4,13 @@
44

55
namespace a9f\FractorDocGenerator\Differ;
66

7-
use ReflectionProperty;
87
use SebastianBergmann\Diff\Differ;
9-
use SebastianBergmann\Diff\Output\UnifiedDiffOutputBuilder;
8+
use SebastianBergmann\Diff\Output\DiffOnlyOutputBuilder;
109

1110
final class DifferFactory
1211
{
1312
public static function create(): Differ
1413
{
15-
$unifiedDiffOutputBuilder = new UnifiedDiffOutputBuilder('');
16-
17-
// this is required to show full diffs from start to end
18-
$contextLinesReflectionProperty = new ReflectionProperty($unifiedDiffOutputBuilder, 'contextLines');
19-
$contextLinesReflectionProperty->setValue($unifiedDiffOutputBuilder, 10000);
20-
21-
return new Differ($unifiedDiffOutputBuilder);
14+
return new Differ(new DiffOnlyOutputBuilder(''));
2215
}
2316
}

packages/fractor-doc-generator/src/Printer/Markdown/MarkdownDiffer.php

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,14 +33,13 @@ public function diff(string $old, string $new): string
3333
}
3434

3535
$diff = $this->differ->diff($old, $new);
36-
$diff = $this->clearUnifiedDiffOutputFirstLine($diff);
3736
$diff = $this->removeTrailingWhitespaces($diff);
3837

3938
return $this->warpToDiffCode($diff);
4039
}
4140

4241
/**
43-
* Removes UnifiedDiffOutputBuilder generated pre-spaces " \n" => "\n"
42+
* Removes StrictUnifiedDiffOutputBuilder generated pre-spaces " \n" => "\n"
4443
*/
4544
private function removeTrailingWhitespaces(string $diff): string
4645
{

packages/fractor/src/Differ/ConsoleDiffer.php

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
use a9f\Fractor\Differ\Formatter\ColorConsoleDiffFormatter;
99
use a9f\Fractor\Differ\ValueObject\Diff;
1010
use SebastianBergmann\Diff\Differ as CoreDiffer;
11-
use SebastianBergmann\Diff\Output\UnifiedDiffOutputBuilder;
11+
use SebastianBergmann\Diff\Output\StrictUnifiedDiffOutputBuilder;
1212

1313
final readonly class ConsoleDiffer implements Differ
1414
{
@@ -17,7 +17,10 @@
1717
public function __construct(
1818
private ColorConsoleDiffFormatter $colorConsoleDiffFormatter
1919
) {
20-
$unifiedDiffOutputBuilder = new UnifiedDiffOutputBuilder();
20+
$unifiedDiffOutputBuilder = new StrictUnifiedDiffOutputBuilder([
21+
'fromFile' => '',
22+
'toFile' => '',
23+
]);
2124
$this->differ = new CoreDiffer($unifiedDiffOutputBuilder);
2225
}
2326

0 commit comments

Comments
 (0)