Skip to content

Commit

Permalink
Fix: Compare entire objects
Browse files Browse the repository at this point in the history
  • Loading branch information
localheinz committed Jun 26, 2023
1 parent aa93ad5 commit 9855322
Showing 1 changed file with 108 additions and 92 deletions.
200 changes: 108 additions & 92 deletions test/Unit/YamlParserTest.php
Expand Up @@ -417,8 +417,12 @@ public function testParseReturnsParsedWhenValueHasEmptyFrontMatterAndBlankConten

$parsed = $parser->parse($value);

self::assertEquals(FrontMatter::fromArray([]), $parsed->frontMatter());
self::assertEquals(Content::fromString(''), $parsed->content());
$expected = Parsed::create(
FrontMatter::fromArray([]),
Content::fromString(''),
);

self::assertEquals($expected, $parsed);
}

public function testParseReturnsParsedWhenValueHasEmptyFrontMatterAndContent(): void
Expand All @@ -433,22 +437,24 @@ public function testParseReturnsParsedWhenValueHasEmptyFrontMatterAndContent():
TXT;

$content = Content::fromString(
<<<'TXT'
$parser = new YamlParser();

$parsed = $parser->parse($value);

$expected = Parsed::create(
FrontMatter::fromArray([]),
Content::fromString(
<<<'TXT'
<h1>
Hello
</h1>
TXT
),
);

$parser = new YamlParser();

$parsed = $parser->parse($value);

self::assertEquals(FrontMatter::fromArray([]), $parsed->frontMatter());
self::assertEquals($content, $parsed->content());
self::assertEquals($expected, $parsed);
}

public function testParseReturnsParsedWhenValueIsEmptyFrontMatterWithWhitespace(): void
Expand All @@ -464,8 +470,12 @@ public function testParseReturnsParsedWhenValueIsEmptyFrontMatterWithWhitespace(

$parsed = $parser->parse($value);

self::assertEquals(FrontMatter::fromArray([]), $parsed->frontMatter());
self::assertEquals(Content::fromString(''), $parsed->content());
$expected = Parsed::create(
FrontMatter::fromArray([]),
Content::fromString(''),
);

self::assertEquals($expected, $parsed);
}

public function testParseReturnsParsedWhenValueHasEmptyFrontMatterWithWhitespaceAndBlankContent(): void
Expand All @@ -482,8 +492,12 @@ public function testParseReturnsParsedWhenValueHasEmptyFrontMatterWithWhitespace

$parsed = $parser->parse($value);

self::assertEquals(FrontMatter::fromArray([]), $parsed->frontMatter());
self::assertEquals(Content::fromString(''), $parsed->content());
$expected = Parsed::create(
FrontMatter::fromArray([]),
Content::fromString(''),
);

self::assertEquals($expected, $parsed);
}

public function testParseReturnsParsedWhenValueHasEmptyFrontMatterWithWhitespaceAndContent(): void
Expand All @@ -500,20 +514,22 @@ public function testParseReturnsParsedWhenValueHasEmptyFrontMatterWithWhitespace
TXT;

$content = Content::fromString(<<<'TXT'
$parser = new YamlParser();

$parsed = $parser->parse($value);

$expected = Parsed::create(
FrontMatter::fromArray([]),
Content::fromString(<<<'TXT'
<h1>
Hello
</h1>
TXT);

$parser = new YamlParser();

$parsed = $parser->parse($value);
TXT),
);

self::assertEquals(FrontMatter::fromArray([]), $parsed->frontMatter());
self::assertEquals($content, $parsed->content());
self::assertEquals($expected, $parsed);
}

public function testParseThrowsFrontMatterCanNotBeParsedWhenFrontMatterCanNotBeParsed(): void
Expand Down Expand Up @@ -663,25 +679,25 @@ public function testParseReturnsParsedWhenValueHasNonEmptyFrontMatterAndBlankCon
TXT;

$frontMatter = FrontMatter::fromArray([
'foo' => 'bar',
'baz' => [
'qux',
'quz',
],
]);

$content = Content::fromString(<<<'TXT'
$parser = new YamlParser();

$parsed = $parser->parse($value);

TXT);
$expected = Parsed::create(
FrontMatter::fromArray([
'foo' => 'bar',
'baz' => [
'qux',
'quz',
],
]),
Content::fromString(<<<'TXT'
$parser = new YamlParser();
$parsed = $parser->parse($value);
TXT),
);

self::assertEquals($frontMatter, $parsed->frontMatter());
self::assertEquals($content, $parsed->content());
self::assertEquals($expected, $parsed);
}

public function testParseReturnsParsedWhenValueHasNonEmptyFrontMatterAndContent(): void
Expand All @@ -700,28 +716,28 @@ public function testParseReturnsParsedWhenValueHasNonEmptyFrontMatterAndContent(
TXT;

$frontMatter = FrontMatter::fromArray([
'foo' => 'bar',
'baz' => [
'qux',
'quz',
],
]);
$parser = new YamlParser();

$parsed = $parser->parse($value);

$content = Content::fromString(<<<'TXT'
$expected = Parsed::create(
FrontMatter::fromArray([
'foo' => 'bar',
'baz' => [
'qux',
'quz',
],
]),
Content::fromString(<<<'TXT'
<h1>
Hello
</h1>
TXT);

$parser = new YamlParser();

$parsed = $parser->parse($value);
TXT),
);

self::assertEquals($frontMatter, $parsed->frontMatter());
self::assertEquals($content, $parsed->content());
self::assertEquals($expected, $parsed);
}

public function testParseReturnsParsedWhenValueIsNonEmptyFrontMatterWithWhitespace(): void
Expand All @@ -737,22 +753,22 @@ public function testParseReturnsParsedWhenValueIsNonEmptyFrontMatterWithWhitespa
---
TXT;

$frontMatter = FrontMatter::fromArray([
'foo' => 'bar',
'baz' => [
'qux',
'quz',
],
]);

$content = Content::fromString('');

$parser = new YamlParser();

$parsed = $parser->parse($value);

self::assertEquals($frontMatter, $parsed->frontMatter());
self::assertEquals($content, $parsed->content());
$expected = Parsed::create(
FrontMatter::fromArray([
'foo' => 'bar',
'baz' => [
'qux',
'quz',
],
]),
Content::fromString(''),
);

self::assertEquals($expected, $parsed);
}

public function testParseReturnsParsedWhenValueHasNonEmptyFrontMatterWithWhitespaceAndBlankContent(): void
Expand All @@ -770,25 +786,25 @@ public function testParseReturnsParsedWhenValueHasNonEmptyFrontMatterWithWhitesp
TXT;

$frontMatter = FrontMatter::fromArray([
'foo' => 'bar',
'baz' => [
'qux',
'quz',
],
]);

$content = Content::fromString(<<<'TXT'
$parser = new YamlParser();

$parsed = $parser->parse($value);

TXT);
$expected = Parsed::create(
FrontMatter::fromArray([
'foo' => 'bar',
'baz' => [
'qux',
'quz',
],
]),
Content::fromString(<<<'TXT'
$parser = new YamlParser();
$parsed = $parser->parse($value);
TXT),
);

self::assertEquals($frontMatter, $parsed->frontMatter());
self::assertEquals($content, $parsed->content());
self::assertEquals($expected, $parsed);
}

public function testParseReturnsParsedWhenValueHasNonEmptyFrontMatterWithWhitespaceAndContent(): void
Expand All @@ -809,27 +825,27 @@ public function testParseReturnsParsedWhenValueHasNonEmptyFrontMatterWithWhitesp
TXT;

$frontMatter = FrontMatter::fromArray([
'foo' => 'bar',
'baz' => [
'qux',
'quz',
],
]);
$parser = new YamlParser();

$parsed = $parser->parse($value);

$content = Content::fromString(<<<'TXT'
$expected = Parsed::create(
FrontMatter::fromArray([
'foo' => 'bar',
'baz' => [
'qux',
'quz',
],
]),
Content::fromString(<<<'TXT'
<h1>
Hello
</h1>
TXT);

$parser = new YamlParser();

$parsed = $parser->parse($value);
TXT),
);

self::assertEquals($frontMatter, $parsed->frontMatter());
self::assertEquals($content, $parsed->content());
self::assertEquals($expected, $parsed);
}
}

0 comments on commit 9855322

Please sign in to comment.