defmodule MyhtmlexTest do use ExUnit.Case doctest Myhtmlex test "builds a tree, formatted like mochiweb by default" do assert {"html", [], [ {"head", [], []}, {"body", [], [ {"br", [], []} ]} ]} = Myhtmlex.decode("
") end test "builds a tree, html tags as atoms" do assert {:html, [], [ {:head, [], []}, {:body, [], [ {:br, [], []} ]} ]} = Myhtmlex.decode("
", format: [:html_atoms]) end test "builds a tree, nil self closing" do assert {"html", [], [ {"head", [], []}, {"body", [], [ {"br", [], nil}, {"esi:include", [], nil} ]} ]} = Myhtmlex.decode("
", format: [:nil_self_closing]) end test "builds a tree, multiple format options" do assert {:html, [], [ {:head, [], []}, {:body, [], [ {:br, [], nil} ]} ]} = Myhtmlex.decode("
", format: [:html_atoms, :nil_self_closing]) end test "attributes" do assert {:html, [], [ {:head, [], []}, {:body, [], [ {:span, [{"id", "test"}, {"class", "foo garble"}], []} ]} ]} = Myhtmlex.decode(~s'', format: [:html_atoms]) end test "single attributes" do assert {:html, [], [ {:head, [], []}, {:body, [], [ {:button, [{"disabled", "disabled"}, {"class", "foo garble"}], []} ]} ]} = Myhtmlex.decode(~s'