summaryrefslogtreecommitdiff
path: root/spec/uploaders/uploader_helper_spec.rb
blob: 33da93cc9d06d21e81d1e5ffdb7b3315ef861dd4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
require 'rails_helper'

describe UploaderHelper do
  let(:uploader) do
    example_uploader = Class.new(CarrierWave::Uploader::Base) do
      include UploaderHelper

      storage :file
    end

    example_uploader.new
  end

  def upload_fixture(filename)
    fixture_file_upload(File.join('spec', 'fixtures', filename))
  end

  describe '#image_or_video?' do
    it 'returns true for an image file' do
      uploader.store!(upload_fixture('dk.png'))

      expect(uploader).to be_image_or_video
    end

    it 'it returns true for a video file' do
      uploader.store!(upload_fixture('video_sample.mp4'))

      expect(uploader).to be_image_or_video
    end

    it 'returns false for other extensions' do
      uploader.store!(upload_fixture('doc_sample.txt'))

      expect(uploader).not_to be_image_or_video
    end
  end
end