2010年 12月 04日

Test-HTML-Differences

というのを書いてみました。

一旦 normalize してから HTML を比較し、テストに失敗した場合は Test::Differences 使ったときのようになります。

#   Failed test 'test'
#   at t/lib/Text/Xatena/Test.pm line 40.
# +----+---------------------------+---------------------------+
# | Elt|Got                        |Expected                   |
# +----+---------------------------+---------------------------+
# |   0|<root>                     |<root>                     |
# |   1|  <div class="section">    |  <div class="section">    |
# |   2|    <h3>head</h3>          |    <h3>head</h3>          |
# |   3|    <p>foobar</p>          |    <p>foobar</p>          |
# |   4|    <div class="seemore">  |    <div class="seemore">  |
# |   5|      <p>barbaz</p>        |      <p>barbaz</p>        |
# |   6|    </div>                 |    </div>                 |
# *   7|  </div>                   |    <div class="section">  *
# *   8|  <div class="section">    |      <h3>head</h3>        *
# *   9|    <h3>head</h3>          |      <p>foo</p>           *
# *  10|    <p>foo</p>             |    </div>                 *
# |  11|  </div>                   |  </div>                   |
# |  12|</root>                    |</root>                    |
# +----+---------------------------+---------------------------+