From d307ee79e9b2f783fbdc6fd2e174ec91c47e8e5e Mon Sep 17 00:00:00 2001
From: ysksn <bluewhale1982@gmail.com>
Date: Mon, 6 Nov 2017 13:54:41 +0900
Subject: [PATCH] Implement tests for Account#refresh! (#5601)

---
 spec/models/account_spec.rb | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/spec/models/account_spec.rb b/spec/models/account_spec.rb
index 5165082d1..9c1492c90 100644
--- a/spec/models/account_spec.rb
+++ b/spec/models/account_spec.rb
@@ -174,6 +174,33 @@ RSpec.describe Account, type: :model do
     end
   end
 
+  describe '#refresh!' do
+    let(:account) { Fabricate(:account, domain: domain) }
+    let(:acct)    { account.acct }
+
+    context 'domain is nil' do
+      let(:domain) { nil }
+
+      it 'returns nil' do
+        expect(account.refresh!).to be_nil
+      end
+
+      it 'calls not ResolveRemoteAccountService#call' do
+        expect_any_instance_of(ResolveRemoteAccountService).not_to receive(:call).with(acct)
+        account.refresh!
+      end
+    end
+
+    context 'domain is present' do
+      let(:domain) { 'example.com' }
+
+      it 'calls ResolveRemoteAccountService#call' do
+        expect_any_instance_of(ResolveRemoteAccountService).to receive(:call).with(acct).once
+        account.refresh!
+      end
+    end
+  end
+
   describe '#to_param' do
     it 'returns username' do
       account = Fabricate(:account, username: 'alice')
-- 
GitLab