12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- <?php declare(strict_types=1);
- /*
- * This file is part of sebastian/diff.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
- namespace SebastianBergmann\Diff\Output;
- use PHPUnit\Framework\TestCase;
- use SebastianBergmann\Diff\Differ;
- /**
- * @covers SebastianBergmann\Diff\Output\UnifiedDiffOutputBuilder
- *
- * @uses SebastianBergmann\Diff\Differ
- * @uses SebastianBergmann\Diff\Output\AbstractChunkOutputBuilder
- * @uses SebastianBergmann\Diff\TimeEfficientLongestCommonSubsequenceCalculator
- */
- final class UnifiedDiffOutputBuilderTest extends TestCase
- {
- /**
- * @param string $expected
- * @param string $from
- * @param string $to
- * @param string $header
- *
- * @dataProvider headerProvider
- */
- public function testCustomHeaderCanBeUsed(string $expected, string $from, string $to, string $header): void
- {
- $differ = new Differ(new UnifiedDiffOutputBuilder($header));
- $this->assertSame(
- $expected,
- $differ->diff($from, $to)
- );
- }
- public function headerProvider(): array
- {
- return [
- [
- "CUSTOM HEADER\n@@ @@\n-a\n+b\n",
- 'a',
- 'b',
- 'CUSTOM HEADER',
- ],
- [
- "CUSTOM HEADER\n@@ @@\n-a\n+b\n",
- 'a',
- 'b',
- "CUSTOM HEADER\n",
- ],
- [
- "CUSTOM HEADER\n\n@@ @@\n-a\n+b\n",
- 'a',
- 'b',
- "CUSTOM HEADER\n\n",
- ],
- [
- "@@ @@\n-a\n+b\n",
- 'a',
- 'b',
- '',
- ],
- ];
- }
- /**
- * @param string $expected
- * @param string $from
- * @param string $to
- *
- * @dataProvider provideDiffWithLineNumbers
- */
- public function testDiffWithLineNumbers($expected, $from, $to): void
- {
- $differ = new Differ(new UnifiedDiffOutputBuilder("--- Original\n+++ New\n", true));
- $this->assertSame($expected, $differ->diff($from, $to));
- }
- public function provideDiffWithLineNumbers(): array
- {
- return UnifiedDiffOutputBuilderDataProvider::provideDiffWithLineNumbers();
- }
- }
|