Skip to content

Commit cabbcbc

Browse files
author
Manuel Rubio
committed
ensure a proplist as options is in use to retrieve filename
1 parent c8d4516 commit cabbcbc

File tree

2 files changed

+13
-1
lines changed

2 files changed

+13
-1
lines changed

lib/earmark/message.ex

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,11 @@ defmodule Earmark.Message do
3737
messages
3838
|> Enum.each(&emit_message(file, &1))
3939
end
40-
def emit_messages(messages, _) do
40+
def emit_messages(messages, proplist) when is_list(proplist) do
41+
messages
42+
|> Enum.each(&emit_message(proplist[:file] || "<args>", &1))
43+
end
44+
def emit_messages(messages, options) do
4145
messages
4246
|> Enum.each(&emit_message("<args>", &1))
4347
end

test/acceptance/html/illegal_options_test.exs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,4 +27,12 @@ defmodule Test.Acceptance.Html.IllegalOptionsTest do
2727
end)
2828
assert error_messages == "<args>:0: warning: Unrecognized option oops: Earmark ignored\n"
2929
end
30+
31+
test "with as_html! defining filename" do
32+
error_messages =
33+
capture_io(:stderr, fn ->
34+
as_html!("hello", oops: Earmark, file: "test.md")
35+
end)
36+
assert error_messages == "test.md:0: warning: Unrecognized option oops: Earmark ignored\n"
37+
end
3038
end

0 commit comments

Comments
 (0)