]> BookStack Code Mirror - bookstack/blobdiff - tests/Entity/MarkdownToHtmlTest.php
respective book and chapter structure added.
[bookstack] / tests / Entity / MarkdownToHtmlTest.php
index 1a439636e728524b7e9d81abc42530216def0c75..158103c7e766b87d1a2f1419d8962da35032c5c6 100644 (file)
@@ -39,6 +39,30 @@ class MarkdownToHtmlTest extends TestCase
         );
     }
 
+    public function test_drawing_blocks_remain_html()
+    {
+        $this->assertConversion(
+            '<div drawio-diagram="190" id="bkmrk--0" contenteditable="false"><img src="http://example.com/uploads/images/drawio/2022-04/drawing-1.png" alt="" /></div>Some text',
+            '<div drawio-diagram="190"><img src="http://example.com/uploads/images/drawio/2022-04/drawing-1.png" alt=""/></div>' . "\n\nSome text"
+        );
+    }
+
+    public function test_summary_tags_have_newlines_after_to_separate_content()
+    {
+        $this->assertConversion(
+            '<details><summary>Toggle</summary><p>Test</p></details>',
+            "<details><summary>Toggle</summary>\n\nTest\n\n</details>"
+        );
+    }
+
+    public function test_iframes_tags_have_newlines_after_to_separate_content()
+    {
+        $this->assertConversion(
+            '<iframe src="https://example.com"></iframe><p>Beans</p>',
+            "<iframe src=\"https://example.com\"></iframe>\n\nBeans"
+        );
+    }
+
     protected function assertConversion(string $html, string $expectedMarkdown, bool $partialMdMatch = false)
     {
         $markdown = (new HtmlToMarkdown($html))->convert();
@@ -49,5 +73,4 @@ class MarkdownToHtmlTest extends TestCase
             static::assertEquals($expectedMarkdown, $markdown);
         }
     }
-
 }