diff --git a/test/services/contact_details_test.rb b/test/services/contact_details_test.rb
index 822a72a1758e0763b6e9e5c8f5a3396613f3938d..d77a990deacd5102239cb7428683db7442034bc8 100644
--- a/test/services/contact_details_test.rb
+++ b/test/services/contact_details_test.rb
@@ -38,6 +38,24 @@ class ContactDetailsTest < ActiveSupport::TestCase
     assert_equal 'https://twitter.com/arnaudlevy', detail.url
   end
 
+  test "mastodon nil" do
+    detail = ContactDetails::Mastodon.new nil
+    assert_nil detail.label
+    assert_nil detail.url
+  end
+
+  test "mastodon mastodon.social/@arnaudlevy" do
+    detail = ContactDetails::Mastodon.new 'mastodon.social/@arnaudlevy'
+    assert_equal 'mastodon.social/@arnaudlevy', detail.label
+    assert_equal 'https://mastodon.social/@arnaudlevy', detail.url
+  end
+
+  test "mastodon https://mastodon.social/@arnaudlevy" do
+    detail = ContactDetails::Mastodon.new 'https://mastodon.social/@arnaudlevy'
+    assert_equal 'mastodon.social/@arnaudlevy', detail.label
+    assert_equal 'https://mastodon.social/@arnaudlevy', detail.url
+  end
+
   test "twitter twitter.com/arnaudlevy" do
     detail = ContactDetails::Twitter.new 'twitter.com/arnaudlevy'
     assert_equal 'arnaudlevy', detail.label