Void elements can be compiled with no attrs
This commit is contained in:
parent
49ebe8c603
commit
540692f7cd
|
@ -17,9 +17,7 @@ defmodule Temple.Parser.NonvoidElementsAliases do
|
|||
def run({name, _, args}) do
|
||||
name = Parser.nonvoid_elements_lookup()[name]
|
||||
|
||||
{do_and_else, args} =
|
||||
args
|
||||
|> Temple.Parser.Utils.split_args()
|
||||
{do_and_else, args} = Temple.Parser.Utils.split_args(args)
|
||||
|
||||
{do_and_else, args} = Temple.Parser.Utils.consolidate_blocks(do_and_else, args)
|
||||
|
||||
|
|
|
@ -13,7 +13,14 @@ defmodule Temple.Parser.VoidElementsAliases do
|
|||
|
||||
@impl Temple.Parser
|
||||
def run({name, _, args}) do
|
||||
{_do_and_else, [args]} = Temple.Parser.Utils.split_args(args)
|
||||
args =
|
||||
case Temple.Parser.Utils.split_args(args) do
|
||||
{_, [args]} when is_list(args) ->
|
||||
args
|
||||
|
||||
{_, args} ->
|
||||
args
|
||||
end
|
||||
|
||||
name = Temple.Parser.void_elements_lookup()[name]
|
||||
|
||||
|
|
|
@ -317,4 +317,22 @@ defmodule TempleTest do
|
|||
assert result ==
|
||||
~s{<fieldset<%= Temple.Parser.Utils.runtime_attrs(Foo.foo_bar()) %>><input type="text"></fieldset>}
|
||||
end
|
||||
|
||||
test "hr tag works" do
|
||||
assigns = %{foo: [class: "foofoo"]}
|
||||
|
||||
result =
|
||||
temple do
|
||||
div do: "foo"
|
||||
hr()
|
||||
div do: "foo"
|
||||
hr @foo
|
||||
div do: "bar"
|
||||
hr class: "foofoo"
|
||||
div do: "bar"
|
||||
end
|
||||
|
||||
assert evaluate_template(result, assigns) ==
|
||||
~s{<div>foo</div><hr><div>foo</div><hr class="foofoo"><div>bar</div><hr class="foofoo"><div>bar</div>}
|
||||
end
|
||||
end
|
||||
|
|
Reference in New Issue