var poor = utils.unexpected({bool: true, arr: true, num: true});

var text = {
  simple: 'Hey **everyone**! Look at http://simonenko.su and let *me* know if you ~~hate~~like it.',
  code: 'See this javascript code:\n\n```js\nif ("text".trim().length > 0) console.log("ok");\n```'
};

it('should works', function() {
  var a = new Yamb();
  var html = a.html(text.simple);

  html.should.equal('<p>Hey <strong>everyone</strong>! Look at <a href="http://simonenko.su">http://simonenko.su</a> and let <em>me</em> know if you <del>hate</del>like it.</p>');
});

it('should works with highlight.js', function() {
  var a = new Yamb();
  var html = a.html(text.code);

  html.should.equal('<p>See this javascript code:</p>\n<pre><code class="lang-js"><span class="hljs-keyword">if</span> (<span class="hljs-string">"text"</span>.trim().length &gt; <span class="hljs-number">0</span>) console.log(<span class="hljs-string">"ok"</span>);\n</code></pre>');
});

it('should not work with unexpected values', function() {
  var html;
  var a = new Yamb();

  for (var i=0, length=poor.length; i<length; i++) {
    if (typeof poor[i] == 'string') {
      continue;
    }

    html = a.html(poor[i]);
    html.should.be.false;
  }
});
@@ -179,16 +179,117 @@
 ,%0A  code
+1: 'See this javascript code:%5Cn%5Cn%60%60%60%5Cnif (%22text%22.trim().length %3E 0) console.log(%22ok%22);%5Cn%60%60%60',%0A  code2
 : 'See t
@@ -694,32 +694,44 @@
 ', function() %7B%0A
+  var html;%0A
   var a = new Ya
@@ -728,37 +728,220 @@
 a = new Yamb();%0A
+%0A
   
-var
+html = a.html(text.code1);%0A  html.should.equal('%3Cp%3ESee this javascript code:%3C/p%3E%5Cn%3Cpre%3E%3Ccode%3Eif (&quot;text&quot;.trim().length &gt; 0) console.log(&quot;ok&quot;);%5Cn%3C/code%3E%3C/pre%3E');%0A%0A 
  html = a.html(t
@@ -948,20 +948,20 @@
 ext.code
+2
 );%0A
-%0A
   html.s

Add more tests for html()