about summary refs log tree commit diff
path: root/spec/controllers/concerns/cache_concern_spec.rb
diff options
context:
space:
mode:
authorClaire <claire.github-309c@sitedethib.com>2021-03-19 14:34:08 +0100
committerGitHub <noreply@github.com>2021-03-19 14:34:08 +0100
commitc7f04961b6dcb1b7e12136deadcf65076c130c40 (patch)
tree20788cbb86d4ae8d38ce539325205e5f0a1ee344 /spec/controllers/concerns/cache_concern_spec.rb
parentba22398c38067e05f141a0dddeb20bf68913988a (diff)
parent3b7b607300d662aa1f25d459ca12aec89ab550e8 (diff)
Merge pull request #1513 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes
Diffstat (limited to 'spec/controllers/concerns/cache_concern_spec.rb')
-rw-r--r--spec/controllers/concerns/cache_concern_spec.rb40
1 files changed, 40 insertions, 0 deletions
diff --git a/spec/controllers/concerns/cache_concern_spec.rb b/spec/controllers/concerns/cache_concern_spec.rb
new file mode 100644
index 000000000..a34d7d726
--- /dev/null
+++ b/spec/controllers/concerns/cache_concern_spec.rb
@@ -0,0 +1,40 @@
+# frozen_string_literal: true
+
+require 'rails_helper'
+
+RSpec.describe CacheConcern, type: :controller do
+  controller(ApplicationController) do
+    include CacheConcern
+
+    def empty_array
+      render plain: cache_collection([], Status).size
+    end
+
+    def empty_relation
+      render plain: cache_collection(Status.none, Status).size
+    end
+  end
+
+  before do
+    routes.draw do
+      get  'empty_array' => 'anonymous#empty_array'
+      post 'empty_relation' => 'anonymous#empty_relation'
+    end
+  end
+
+  describe '#cache_collection' do
+    context 'given an empty array' do
+      it 'returns an empty array' do
+        get :empty_array
+        expect(response.body).to eq '0'
+      end
+    end
+
+    context 'given an empty relation' do
+      it 'returns an empty array' do
+        get :empty_relation
+        expect(response.body).to eq '0'
+      end
+    end
+  end
+end