about summary refs log tree commit diff
path: root/spec
diff options
context:
space:
mode:
authorStarfall <us@starfall.systems>2021-07-07 11:46:33 -0500
committerStarfall <us@starfall.systems>2021-07-07 11:46:33 -0500
commitd30025d28d813999bfe98ce9cee2cda3bebf6c22 (patch)
treee2cf70344fc6426f3a2c778d3b6d3bab9e22c078 /spec
parentfadb06ef6e1950a82f08673683e705943b93ba40 (diff)
parent0c2eb949fc21ceecbd99a81e5ffe75517a1e64df (diff)
Merge branch 'glitch'
Diffstat (limited to 'spec')
-rw-r--r--spec/controllers/follower_accounts_controller_spec.rb19
-rw-r--r--spec/controllers/following_accounts_controller_spec.rb19
-rw-r--r--spec/fabricators/login_activity_fabricator.rb8
-rw-r--r--spec/models/login_activity_spec.rb5
4 files changed, 49 insertions, 2 deletions
diff --git a/spec/controllers/follower_accounts_controller_spec.rb b/spec/controllers/follower_accounts_controller_spec.rb
index f6d55f693..006274169 100644
--- a/spec/controllers/follower_accounts_controller_spec.rb
+++ b/spec/controllers/follower_accounts_controller_spec.rb
@@ -3,7 +3,7 @@ require 'rails_helper'
 describe FollowerAccountsController do
   render_views
 
-  let(:alice) { Fabricate(:account, username: 'alice') }
+  let(:alice) { Fabricate(:user).account }
   let(:follower0) { Fabricate(:account) }
   let(:follower1) { Fabricate(:account) }
 
@@ -101,6 +101,23 @@ describe FollowerAccountsController do
           expect(body['partOf']).to be_blank
         end
 
+        context 'when account hides their network' do
+          before do
+            alice.user.settings.hide_network = true
+          end
+
+          it 'returns followers count' do
+            expect(body['totalItems']).to eq 2
+          end
+
+          it 'does not return items' do
+            expect(body['items']).to be_blank
+            expect(body['orderedItems']).to be_blank
+            expect(body['first']).to be_blank
+            expect(body['last']).to be_blank
+          end
+        end
+
         context 'when account is permanently suspended' do
           before do
             alice.suspend!
diff --git a/spec/controllers/following_accounts_controller_spec.rb b/spec/controllers/following_accounts_controller_spec.rb
index 0fc0967a6..7ec0e3d06 100644
--- a/spec/controllers/following_accounts_controller_spec.rb
+++ b/spec/controllers/following_accounts_controller_spec.rb
@@ -3,7 +3,7 @@ require 'rails_helper'
 describe FollowingAccountsController do
   render_views
 
-  let(:alice) { Fabricate(:account, username: 'alice') }
+  let(:alice) { Fabricate(:user).account }
   let(:followee0) { Fabricate(:account) }
   let(:followee1) { Fabricate(:account) }
 
@@ -101,6 +101,23 @@ describe FollowingAccountsController do
           expect(body['partOf']).to be_blank
         end
 
+        context 'when account hides their network' do
+          before do
+            alice.user.settings.hide_network = true
+          end
+
+          it 'returns followers count' do
+            expect(body['totalItems']).to eq 2
+          end
+
+          it 'does not return items' do
+            expect(body['items']).to be_blank
+            expect(body['orderedItems']).to be_blank
+            expect(body['first']).to be_blank
+            expect(body['last']).to be_blank
+          end
+        end
+
         context 'when account is permanently suspended' do
           before do
             alice.suspend!
diff --git a/spec/fabricators/login_activity_fabricator.rb b/spec/fabricators/login_activity_fabricator.rb
new file mode 100644
index 000000000..931d3082c
--- /dev/null
+++ b/spec/fabricators/login_activity_fabricator.rb
@@ -0,0 +1,8 @@
+Fabricator(:login_activity) do
+  user
+  strategy       'password'
+  success        true
+  failure_reason nil
+  ip             { Faker::Internet.ip_v4_address }
+  user_agent     { Faker::Internet.user_agent }
+end
diff --git a/spec/models/login_activity_spec.rb b/spec/models/login_activity_spec.rb
new file mode 100644
index 000000000..ba2d207c9
--- /dev/null
+++ b/spec/models/login_activity_spec.rb
@@ -0,0 +1,5 @@
+require 'rails_helper'
+
+RSpec.describe LoginActivity, type: :model do
+
+end