about summary refs log tree commit diff
diff options
context:
space:
mode:
authornullkal <nullkal@users.noreply.github.com>2017-08-18 00:52:40 +0900
committerEugen Rochko <eugen@zeonfederated.com>2017-08-17 17:52:40 +0200
commit075d6a1e13aa6477c656e9dbe03e6720cb4e2b32 (patch)
tree9d84b068162636ece4fd82fdd1d2e528480086f1
parent54a04e36587840e330a0a4df7c4e1855a3c92e03 (diff)
Show what protocol is used for accounts in admin/accounts#index (#4622)
* Show what protocol used for in admin/accounts#index

* Add frozen_string_literal
-rw-r--r--app/helpers/account_helper.rb14
-rw-r--r--app/views/admin/accounts/_account.html.haml3
-rw-r--r--app/views/admin/accounts/index.html.haml1
-rw-r--r--app/views/admin/accounts/show.html.haml2
-rw-r--r--spec/helpers/account_helper_spec.rb30
5 files changed, 49 insertions, 1 deletions
diff --git a/app/helpers/account_helper.rb b/app/helpers/account_helper.rb
new file mode 100644
index 000000000..00d4fc657
--- /dev/null
+++ b/app/helpers/account_helper.rb
@@ -0,0 +1,14 @@
+# frozen_string_literal: true
+
+module AccountHelper
+  def protocol_for_display(protocol)
+    case protocol
+    when 'activitypub'
+      'ActivityPub'
+    when 'ostatus'
+      'OStatus'
+    else
+      protocol
+    end
+  end
+end
diff --git a/app/views/admin/accounts/_account.html.haml b/app/views/admin/accounts/_account.html.haml
index c513776b7..a7fca6b3e 100644
--- a/app/views/admin/accounts/_account.html.haml
+++ b/app/views/admin/accounts/_account.html.haml
@@ -4,6 +4,9 @@
   %td.domain
     - unless account.local?
       = link_to account.domain, admin_accounts_path(by_domain: account.domain)
+  %td.protocol
+    - unless account.local?
+      = protocol_for_display(account.protocol)
   %td.confirmed
     - if account.local?
       - if account.user_confirmed?
diff --git a/app/views/admin/accounts/index.html.haml b/app/views/admin/accounts/index.html.haml
index 07c8d1632..1f36aeb31 100644
--- a/app/views/admin/accounts/index.html.haml
+++ b/app/views/admin/accounts/index.html.haml
@@ -55,6 +55,7 @@
     %tr
       %th= t('admin.accounts.username')
       %th= t('admin.accounts.domain')
+      %th= t('admin.accounts.protocol')
       %th= t('admin.accounts.confirmed')
       %th= fa_icon 'paper-plane-o'
       %th
diff --git a/app/views/admin/accounts/show.html.haml b/app/views/admin/accounts/show.html.haml
index 5c781e817..f0e4e303c 100644
--- a/app/views/admin/accounts/show.html.haml
+++ b/app/views/admin/accounts/show.html.haml
@@ -33,7 +33,7 @@
         %td= link_to @account.url, @account.url
       %tr
         %th= t('admin.accounts.protocol')
-        %td= @account.protocol
+        %td= protocol_for_display(@account.protocol)
 
       - if @account.ostatus?
         %tr
diff --git a/spec/helpers/account_helper_spec.rb b/spec/helpers/account_helper_spec.rb
new file mode 100644
index 000000000..63e7c78b6
--- /dev/null
+++ b/spec/helpers/account_helper_spec.rb
@@ -0,0 +1,30 @@
+require 'rails_helper'
+
+# Specs in this file have access to a helper object that includes
+# the AccountHelper. For example:
+#
+# describe AccountHelper do
+#   describe "string concat" do
+#     it "concats two strings with spaces" do
+#       expect(helper.concat_strings("this","that")).to eq("this that")
+#     end
+#   end
+# end
+RSpec.describe AccountHelper, type: :helper do
+  describe '#protocol_for_display' do
+    it "returns OStatus when the protocol is 'ostatus'" do
+      protocol = 'ostatus'
+      expect(protocol_for_display(protocol)).to eq 'OStatus'
+    end
+
+    it "returns ActivityPub when the protocol is 'activitypub'" do
+      protocol = 'activitypub'
+      expect(protocol_for_display(protocol)).to eq 'ActivityPub'
+    end
+
+    it "returns the same string when the protocol is unknown" do
+      protocol = 'wave'
+      expect(protocol_for_display(protocol)).to eq protocol
+    end
+  end
+end