Sha256: a345c48cbbde7cd77b29da812646de8c91aea8e19eceb6940b07f4b370a286f6

Contents?: true

Size: 1.66 KB

Versions: 4

Compression:

Stored size: 1.66 KB

Contents

require 'spec_helper'

describe 'generic_files/stats.html.erb' do
  describe 'usage statistics' do
    let(:generic_file) {
      stub_model(GenericFile, noid: '123',
        title: ['file1.txt'])
    }

    let(:no_stats) {
      allow_message_expectations_on_nil
      allow(FileUsage).to receive(:new)
      stub_model(FileUsage,
        created: Date.parse('2014-01-01'),
        total_pageviews: 0,
        total_downloads: 0,
        to_flot: []
      )
    }

    let(:stats) {
      allow(FileUsage).to receive(:new)
      stub_model(FileUsage,
        created: Date.parse('2014-01-01'),
        total_pageviews: 9,
        total_downloads: 4,
        to_flot: [[1396422000000,2],[1396508400000,3],[1396594800000,4]]
      )
    }

    before do
      assign(:generic_file, generic_file)
      assign(:stats, no_stats)
    end

    it 'shows breadcrumbs' do
      render
      page = Capybara::Node::Simple.new(rendered)
      expect(page).to have_selector('span.active', text: 'file1.txt')
    end

    context 'when no analytics results returned' do
      before do
        assign(:pageviews, 0)
      end

      it 'shows 0 visits' do
        render
        page = Capybara::Node::Simple.new(rendered)
        expect(page).to have_selector('div.alert-info', text: /0 views and 0 downloads since January 1, 2014/i, count: 1)
      end
    end

    context 'when results are returned' do
      before do
        assign(:stats, stats)
      end

      it 'shows visits' do
        render
        page = Capybara::Node::Simple.new(rendered)
        expect(page).to have_selector('div.alert-info', text: /9 views and 4 downloads since January 1, 2014/i, count: 1)
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
sufia-4.0.0.rc2 spec/views/generic_file/stats.html.erb_spec.rb
sufia-4.0.0.rc1 spec/views/generic_file/stats.html.erb_spec.rb
sufia-4.0.0.beta4 spec/views/generic_file/stats.html.erb_spec.rb
sufia-4.0.0.beta3 spec/views/generic_file/stats.html.erb_spec.rb