@@ -580,6 +580,11 @@ void main() {
580580 '<p><strong>bold</strong></p>' ,
581581 const StrongNode (nodes: [TextNode ('bold' )]));
582582
583+ testParseInline ('parse deleted/strike-through' ,
584+ // "~~strike through~~"
585+ '<p><del>strike through</del></p>' ,
586+ const DeletedNode (nodes: [TextNode ('strike through' )]));
587+
583588 testParseInline ('parse emphasis/italic' ,
584589 // "*italic*"
585590 '<p><em>italic</em></p>' ,
@@ -590,11 +595,12 @@ void main() {
590595 '<p><code>inline code</code></p>' ,
591596 const InlineCodeNode (nodes: [TextNode ('inline code' )]));
592597
593- testParseInline ('parse nested strong, em, code' ,
594- // "***`word`***"
595- '<p><strong><em><code>word</code></em></strong></p>' ,
596- const StrongNode (nodes: [EmphasisNode (nodes: [InlineCodeNode (nodes: [
597- TextNode ('word' )])])]));
598+ testParseInline ('parse nested del, strong, em, code' ,
599+ // "~~***`word`***~~"
600+ '<p><del><strong><em><code>word</code></em></strong></del></p>' ,
601+ const DeletedNode (
602+ nodes: [StrongNode (nodes: [EmphasisNode (nodes: [InlineCodeNode (nodes: [
603+ TextNode ('word' )])])])]));
598604
599605 group ('LinkNode' , () {
600606 testParseInline ('parse link' ,
@@ -618,19 +624,21 @@ void main() {
618624 nodes: [TextNode ('#mobile-team > zulip-flutter' )]));
619625 });
620626
621- testParseInline ('parse nested link, strong, em, code' ,
622- // "[***`word`***](https://example/)"
623- '<p><a href="https://example/"><strong><em><code>word'
624- '</code></em></strong></a></p>' ,
627+ testParseInline ('parse nested link, del, strong, em, code' ,
628+ // "[~~ ***`word`***~~ ](https://example/)"
629+ '<p><a href="https://example/"><del>< strong><em><code>word'
630+ '</code></em></strong></del></ a></p>' ,
625631 const LinkNode (url: 'https://example/' ,
626- nodes: [StrongNode (nodes: [EmphasisNode (nodes: [InlineCodeNode (nodes: [
627- TextNode ('word' )])])])]));
632+ nodes: [DeletedNode (nodes: [
633+ StrongNode (nodes: [EmphasisNode (nodes: [InlineCodeNode (nodes: [
634+ TextNode ('word' )])])])])]));
628635
629- testParseInline ('parse nested strong, em, link' ,
630- // "***[t](/u)***"
631- '<p><strong><em><a href="/u">t</a></em></strong></p>' ,
632- const StrongNode (nodes: [EmphasisNode (nodes: [LinkNode (url: '/u' ,
633- nodes: [TextNode ('t' )])])]));
636+ testParseInline ('parse nested del, strong, em, link' ,
637+ // "~~***[t](/u)***~~"
638+ '<p><del><strong><em><a href="/u">t</a></em></strong></del></p>' ,
639+ const DeletedNode (
640+ nodes: [StrongNode (nodes: [EmphasisNode (nodes: [LinkNode (url: '/u' ,
641+ nodes: [TextNode ('t' )])])])]));
634642
635643 group ('parse @-mentions' , () {
636644 testParseInline ('plain user @-mention' ,
@@ -727,14 +735,15 @@ void main() {
727735 HeadingNode (level: HeadingLevel .h6, links: null , nodes: [TextNode ('six' )])]);
728736
729737 testParse ('containing inline markup' ,
730- // "###### one [***`two`***](https://example/)"
731- '<h6>one <a href="https://example/"><strong><em><code>two'
732- '</code></em></strong></a></h6>' , const [
738+ // "###### one [**~~ *`two`*~~ **](https://example/)"
739+ '<h6>one <a href="https://example/"><strong><del>< em><code>two'
740+ '</code></em></del></ strong></a></h6>' , const [
733741 HeadingNode (level: HeadingLevel .h6, links: null , nodes: [
734742 TextNode ('one ' ),
735743 LinkNode (url: 'https://example/' ,
736- nodes: [StrongNode (nodes: [EmphasisNode (nodes: [
737- InlineCodeNode (nodes: [TextNode ('two' )])])])]),
744+ nodes: [StrongNode (
745+ nodes: [DeletedNode ( nodes: [EmphasisNode (nodes: [
746+ InlineCodeNode (nodes: [TextNode ('two' )])])])])]),
738747 ])]);
739748
740749 testParse ('amidst paragraphs' ,
0 commit comments