From 8e6e755f793a02cf8986da1f8efb1c0c12d8d7a7 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sat, 26 Sep 2026 22:42:46 +0100 Subject: Escape markdown image alt text and src --- test/writers/markdown-writer.tests.js | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'test') diff --git a/test/writers/markdown-writer.tests.js b/test/writers/markdown-writer.tests.js index d66cc79..578e6ff 100644 --- a/test/writers/markdown-writer.tests.js +++ b/test/writers/markdown-writer.tests.js @@ -117,13 +117,25 @@ test('links have anchors before opening square bracket', function() { test('can generate images', function() { var writer = mdWriter.writer(); writer.selfClosing("img", {"src": "http://example.com/image.jpg", "alt": "Alt Text"}); - return assert.equal(writer.asString(), "![Alt Text](http://example.com/image.jpg)"); + return assert.equal(writer.asString(), "![Alt Text](http://example\\.com/image\\.jpg)"); +}); + +test('image alt text is escaped', function() { + var writer = mdWriter.writer(); + writer.selfClosing("img", {"src": "http://example.com/image.jpg", "alt": "Alt Text]Oops"}); + return assert.equal(writer.asString(), "![Alt Text\\]Oops](http://example\\.com/image\\.jpg)"); +}); + +test('image src is escaped', function() { + var writer = mdWriter.writer(); + writer.selfClosing("img", {"src": "http://example.com/image.jpg)Oops", "alt": "Alt Text"}); + return assert.equal(writer.asString(), "![Alt Text](http://example\\.com/image\\.jpg\\)Oops)"); }); test('can generate images with missing alt attribute', function() { var writer = mdWriter.writer(); writer.selfClosing("img", {"src": "http://example.com/image.jpg"}); - return assert.equal(writer.asString(), "![](http://example.com/image.jpg)"); + return assert.equal(writer.asString(), "![](http://example\\.com/image\\.jpg)"); }); test('can generate images with missing src attribute', function() { -- cgit v1.2.3