diff options
Diffstat (limited to 'test/mask_test.exs')
-rw-r--r-- | test/mask_test.exs | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/test/mask_test.exs b/test/mask_test.exs new file mode 100644 index 0000000..9a55e01 --- /dev/null +++ b/test/mask_test.exs @@ -0,0 +1,22 @@ +defmodule Irc.MaskTest do + use ExUnit.Case + alias Irc.Mask + doctest Irc.Mask + + test "user mask" do + assert Mask.parse("nick!user@host") == {:ok, + %Mask{nick: "nick", user: "user", host: "host", server: nil}} + end + + test "server mask" do + assert Mask.parse("masked.irc.server") == {:ok, + %Mask{server: "masked.irc.server", nick: nil, user: nil, host: nil}} + end + + test "invalid masks" do + assert Mask.parse("bonjour") == {:error, :invalid_mask} + assert Mask.parse("bang!bang") == {:error, :invalid_mask} + assert Mask.parse("ding@dong") == {:error, :invalid_mask} + end + +end |