public void CharsConvertedToHtmlEncodedForm() { var decoder = new ANSICommandToHTMLConverter(null); string actualHtml = decoder.ConvertFromInternalFormat( new[] { new CharHTMLCommand {Char = 'X'}, new CharHTMLCommand {Char = '<'} } ); Assert.AreEqual("<pre>X<", actualHtml); }
public void CRLFGetsCorrectlyInserted() { var decoder = new ANSICommandToHTMLConverter(null); string actualHtml = decoder.ConvertFromInternalFormat( new IANSICommand[] { new CharHTMLCommand {Char = 'X'}, new NewLineHTMLCommand(), new CharHTMLCommand {Char = 'Y'} } ); Assert.AreEqual("<pre>X</pre><pre>Y", actualHtml); }
public void EmptyLineGetsNBSP() { var decoder = new ANSICommandToHTMLConverter(null); string actualHtml = decoder.ConvertFromInternalFormat( new IANSICommand[] { new NewLineHTMLCommand(), new NewLineHTMLCommand(), new NewLineHTMLCommand(), new CharHTMLCommand {Char = 'Y'} } ); Assert.AreEqual("<pre> </pre><pre> </pre><pre> </pre><pre>Y", actualHtml); }
public void BoldGetsAppliedMidLine() { var decoder = new ANSICommandToHTMLConverter(null); string actualHtml = decoder.ConvertFromInternalFormat( new IANSICommand[] { new CharHTMLCommand { Char = 'a' }, new CharHTMLCommand { Char = 'b' }, new BackgroundColorCommand(Color.Red), new SetBoldCommand(true), new CharHTMLCommand {Char = 'c'}, new CharHTMLCommand { Char = 'd' } } ); Assert.AreEqual("<pre>ab<font style='color:#FFFFFF;background-color:#FF0000'>cd", actualHtml); }
public void FontInteractsCorrectlyWithLineEnd() { var decoder = new ANSICommandToHTMLConverter(null); string actualHtml = decoder.ConvertFromInternalFormat( new IANSICommand[] { new ForegroundColorCommand(Color.Red), new CharHTMLCommand { Char = 'a' }, new ForegroundColorCommand(Color.Blue), new CharHTMLCommand { Char = 'b' }, new ForegroundColorCommand(Color.FromArgb(0, 255, 0)), new CharHTMLCommand {Char = 'c'}, new NewLineHTMLCommand(), new CharHTMLCommand { Char = 'd' } } ); string expectedHtml = "<pre><font style='color:#8B0000'>a</font>" + "<font style='color:#00008B'>b</font>" + "<font style='color:#008B00'>c</font></pre>" + "<pre><font style='color:#008B00'>d"; Assert.AreEqual(expectedHtml, actualHtml); }
public void UnderlineGetsAppliedMidLine() { var decoder = new ANSICommandToHTMLConverter(null); string actualHtml = decoder.ConvertFromInternalFormat( new IANSICommand[] { new CharHTMLCommand { Char = 'a' }, new CharHTMLCommand { Char = 'b' }, new SetUnderlineCommand(true), new CharHTMLCommand {Char = 'c'}, new CharHTMLCommand { Char = 'd' } } ); Assert.AreEqual("<pre>ab<font style='text-decoration:underline'>cd", actualHtml); }
public void TextColorGetsAppliedAtStartOfLine() { var decoder = new ANSICommandToHTMLConverter(null); string actualHtml = decoder.ConvertFromInternalFormat( new IANSICommand[] { new ForegroundColorCommand(Color.Red), new CharHTMLCommand { Char = 'a' }, new CharHTMLCommand { Char = 'b' }, new CharHTMLCommand {Char = 'c'}, new CharHTMLCommand { Char = 'd' } } ); Assert.AreEqual("<pre><font style='color:#8B0000'>abcd", actualHtml); }
public void StrikethroughCombinesWithLinethrough() { var decoder = new ANSICommandToHTMLConverter(null); string actualHtml = decoder.ConvertFromInternalFormat( new IANSICommand[] { new CharHTMLCommand { Char = 'a' }, new CharHTMLCommand { Char = 'b' }, new SetUnderlineCommand(true), new SetStrikethroughCommand(true), new CharHTMLCommand {Char = 'c'}, new CharHTMLCommand { Char = 'd' } } ); Assert.AreEqual("<pre>ab<font style='text-decoration:line-through underline'>cd", actualHtml); }
public void ReverseVideoGetsAppliedMidline() { var decoder = new ANSICommandToHTMLConverter(null); string actualHtml = decoder.ConvertFromInternalFormat( new IANSICommand[] { new CharHTMLCommand { Char = 'a' }, new CharHTMLCommand { Char = 'b' }, new SetReverseVideoCommand(true), new CharHTMLCommand {Char = 'c'}, new CharHTMLCommand { Char = 'd' } } ); Assert.AreEqual("<pre>ab<font style='color:#000000;background-color:#8B8B8B'>cd", actualHtml); }
public void ResetRevertsToDefaultFonts() { var decoder = new ANSICommandToHTMLConverter(null); string actualHtml = decoder.ConvertFromInternalFormat( new IANSICommand[] { new ForegroundColorCommand(Color.Red), new CharHTMLCommand { Char = 'a' }, new CharHTMLCommand { Char = 'b' }, new ResetCommand(), new CharHTMLCommand {Char = 'c'}, new CharHTMLCommand { Char = 'd' } } ); Assert.AreEqual("<pre><font style='color:#8B0000'>ab</font>cd", actualHtml); }
public void ItalicGetsAppliedMidLine() { var decoder = new ANSICommandToHTMLConverter(null); string actualHtml = decoder.ConvertFromInternalFormat( new IANSICommand[] { new CharHTMLCommand { Char = 'a' }, new CharHTMLCommand { Char = 'b' }, new SetItalicCommand(true), new CharHTMLCommand {Char = 'c'}, new CharHTMLCommand { Char = 'd' } } ); Assert.AreEqual("<pre>ab<font style='font-style:italic'>cd", actualHtml); }