From 5bda202cff129536e1dfe9a1afbcbca1e6695ea1 Mon Sep 17 00:00:00 2001 From: Stefan Zweifel Date: Sat, 18 Nov 2023 15:05:56 +0100 Subject: [PATCH] Add AST Test with multiple List Items --- .../Renderer/Block/ListBlockRendererTest.php | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/tests/Renderer/Block/ListBlockRendererTest.php b/tests/Renderer/Block/ListBlockRendererTest.php index a3799da..805e2e8 100644 --- a/tests/Renderer/Block/ListBlockRendererTest.php +++ b/tests/Renderer/Block/ListBlockRendererTest.php @@ -87,4 +87,44 @@ public function it_renders_unordered_list_block(): void $this->assertIsString($result); $this->assertEquals("- List Item Value\n \n", $result); } + + #[Test] + public function it_renders_unordered_list_with_multiple_list_item_values_correctly(): void + { + // Build up Children + $data = new ListData(); + $data->type = ListBlock::TYPE_BULLET; + $data->padding = 2; + $data->bulletChar = '-'; + + $listItem = new ListItem($data); + + $paragraph = new Paragraph(); + $paragraph->appendChild(new Text('List Item Value')); + $listItem->appendChild($paragraph); + + $block = new ListBlock($data); + $block->appendChild($listItem); + $block->appendChild(clone $listItem); + $block->appendChild(clone $listItem); + + // Build up Child Renderer + $environment = new Environment(); + $environment->addExtension(new MarkdownRendererExtension()); + $childRenderer = new MarkdownRenderer($environment); + + // Render AST + $result = $this->renderer->render($block, $childRenderer); + + $this->assertIsString($result); + $this->assertEquals(<<<'TXT' + - List Item Value + + - List Item Value + + - List Item Value + + + TXT, $result); + } }