summaryrefslogtreecommitdiff
path: root/test/mask_test.exs
diff options
context:
space:
mode:
Diffstat (limited to 'test/mask_test.exs')
-rw-r--r--test/mask_test.exs22
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