Unit tests for SimplifiedBackwardsTextIterator. It currently shows a bug that it generates an extra new line at the beginning.

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".


PASS plainTextWithTextIterator("<div>hello</div>world") is "hello\nworld"
PASS plainTextWithBackwardsTextIterator("<div>hello</div>world") is "\nhello\nworld"

PASS plainTextWithTextIterator("<div>hello</div><div>world</div>") is "hello\nworld"
PASS plainTextWithBackwardsTextIterator("<div>hello</div><div>world</div>") is "\nhello\nworld"

PASS plainTextWithTextIterator("<div><b>h</b>ello <span>world</span></div>WebKit") is "hello world\nWebKit"
PASS plainTextWithBackwardsTextIterator("<div><b>h</b>ello <span>world</span></div>WebKit") is "\nhello world\nWebKit"

PASS plainTextWithTextIterator("hello<br>world<br>") is "hello\nworld\n"
PASS plainTextWithBackwardsTextIterator("hello<br>world<br>") is "hello\nworld"

PASS plainTextWithTextIterator("<ul><li>hello<li>world</ul>WebKit") is "hello\nworld\nWebKit"
PASS plainTextWithBackwardsTextIterator("<ul><li>hello<li>world</ul>WebKit") is "\n\nhello\nworld\nWebKit"

PASS plainTextWithTextIterator("<table><tr><td>hello</td><td>world</td></table>") is "hello	world"
PASS plainTextWithBackwardsTextIterator("<table><tr><td>hello</td><td>world</td></table>") is "\n\nhello\tworld\t"

PASS plainTextWithBackwardsTextIterator("img<img>iframe<iframe></iframe>meter<meter></meter>progress<progress></progress><legend>legend</legend>imgrole<span role='img'></span><button>button</button>") is "img,iframe,meter,progress,\nlegend,imgrole,button,"
PASS plainTextWithBackwardsTextIterator("audio<audio controls><source src='test.mp3' type='audio/mpeg'></audio>file") is "audio,file"
PASS successfullyParsed is true

TEST COMPLETE

