about summary refs log tree commit diff
path: root/spec/support/examples/models/concerns/account_header.rb
diff options
context:
space:
mode:
authorThibG <thib@sitedethib.com>2020-01-05 13:51:50 +0100
committerGitHub <noreply@github.com>2020-01-05 13:51:50 +0100
commitbcfd6e3bb48f6e0eb88f7f3a650832842ab69166 (patch)
tree0e2bb7334c7954bee2962ed78565046e3b974725 /spec/support/examples/models/concerns/account_header.rb
parent22daf24600d8e99e4569740ee5836d25c70c1e8b (diff)
parent83359fef2b04e81b35b047510ddb0c79bcf8ddaa (diff)
Merge pull request #1259 from ThibG/glitch-soc/merge-upstream
Merge upstream changes
Diffstat (limited to 'spec/support/examples/models/concerns/account_header.rb')
-rw-r--r--spec/support/examples/models/concerns/account_header.rb23
1 files changed, 23 insertions, 0 deletions
diff --git a/spec/support/examples/models/concerns/account_header.rb b/spec/support/examples/models/concerns/account_header.rb
new file mode 100644
index 000000000..77ee0e629
--- /dev/null
+++ b/spec/support/examples/models/concerns/account_header.rb
@@ -0,0 +1,23 @@
+# frozen_string_literal: true
+
+shared_examples 'AccountHeader' do |fabricator|
+  describe 'base64-encoded files' do
+    let(:base64_attachment) { "data:image/jpeg;base64,#{Base64.encode64(attachment_fixture('attachment.jpg').read)}" }
+    let(:account) { Fabricate(fabricator, header: base64_attachment) }
+
+    it 'saves header' do
+      expect(account.persisted?).to be true
+      expect(account.header).to_not be_nil
+    end
+
+    it 'gives the header a file name' do
+      expect(account.header_file_name).to_not be_blank
+    end
+
+    it 'saves a new header under a different file name' do
+      previous_file_name = account.header_file_name
+      account.update(header: base64_attachment)
+      expect(account.header_file_name).to_not eq previous_file_name
+    end
+  end
+end