| 
									
										
										
										
											2024-12-17 23:35:08 +02:00
										 |  |  | import markdownExportService from "../../../src/services/export/md.js"; | 
					
						
							|  |  |  | import { trimIndentation } from "../../support/utils.js"; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | describe("Markdown export", () => { | 
					
						
							|  |  |  |     it("trims language tag for code blocks", () => { | 
					
						
							|  |  |  |         const html = trimIndentation`\
 | 
					
						
							|  |  |  |             <p>A diff:</p> | 
					
						
							|  |  |  |             <pre><code class="language-text-x-diff">Hello | 
					
						
							|  |  |  |             -world | 
					
						
							|  |  |  |             +worldy | 
					
						
							|  |  |  |             </code></pre>`;
 | 
					
						
							|  |  |  |         const expected = trimIndentation`\
 | 
					
						
							|  |  |  |             A diff: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             \`\`\`diff
 | 
					
						
							|  |  |  |             Hello | 
					
						
							|  |  |  |             -world | 
					
						
							|  |  |  |             +worldy | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             \`\`\``; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         expect(markdownExportService.toMarkdown(html)).toBe(expected); | 
					
						
							|  |  |  |     }); | 
					
						
							| 
									
										
										
										
											2024-12-17 23:40:39 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |     it("removes auto tag for code blocks", () => { | 
					
						
							|  |  |  |         const html = trimIndentation`\
 | 
					
						
							|  |  |  |             <pre><code class="language-text-x-trilium-auto">Hello | 
					
						
							|  |  |  |             -world | 
					
						
							|  |  |  |             +worldy | 
					
						
							|  |  |  |             </code></pre>`;
 | 
					
						
							|  |  |  |         const expected = trimIndentation`\
 | 
					
						
							|  |  |  |             \`\`\`
 | 
					
						
							|  |  |  |             Hello | 
					
						
							|  |  |  |             -world | 
					
						
							|  |  |  |             +worldy | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             \`\`\``; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         expect(markdownExportService.toMarkdown(html)).toBe(expected); | 
					
						
							| 
									
										
										
										
											2024-12-17 23:42:31 +02:00
										 |  |  |     }); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     it("supports code block with no language tag", () => { | 
					
						
							|  |  |  |         const html = trimIndentation`\
 | 
					
						
							|  |  |  |             <pre><code>Hello</code></pre>`;
 | 
					
						
							|  |  |  |         const expected = trimIndentation`\
 | 
					
						
							|  |  |  |             \`\`\`
 | 
					
						
							|  |  |  |             Hello | 
					
						
							|  |  |  |             \`\`\``; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         expect(markdownExportService.toMarkdown(html)).toBe(expected); | 
					
						
							|  |  |  |     }); | 
					
						
							| 
									
										
										
										
											2024-12-22 15:45:54 +02:00
										 |  |  | }); |