Sha256: f148a66ddb5534d200eb7ae20d4162e098604492086b5dc70c72804c66351713

Contents?: true

Size: 1.24 KB

Versions: 5

Compression:

Stored size: 1.24 KB

Contents

require 'spec_helper'

describe Sufia::UserUsageStats do
  subject { FactoryGirl.create(:user) }

  describe 'with cached stats' do
    let!(:stat_1_day_ago) { UserStat.create!(user_id: subject.id, date: 1.day.ago, file_views: 3, file_downloads: 2) }
    let!(:stat_2_days_ago) { UserStat.create!(user_id: subject.id, date: 2.days.ago, file_views: 2, file_downloads: 1) }

    let!(:someone_elses_user_id) { subject.id + 1 }
    let!(:not_my_stat) { UserStat.create!(user_id: someone_elses_user_id, date: 2.days.ago, file_views: 10, file_downloads: 11) }

    describe '#total_file_views' do
      it 'returns the total file views for that user' do
        expect(subject.total_file_views).to eq 5
      end
    end

    describe '#total_file_downloads' do
      it 'returns the total file downloads for that user' do
        expect(subject.total_file_downloads).to eq 3
      end
    end
  end

  describe 'with empty cache' do
    describe '#total_file_views' do
      it 'returns the total file views for that user' do
        expect(subject.total_file_views).to eq 0
      end
    end

    describe '#total_file_downloads' do
      it 'returns the total file downloads for that user' do
        expect(subject.total_file_downloads).to eq 0
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
sufia-6.7.0 spec/models/user_usage_stats_spec.rb
sufia-6.6.1 spec/models/user_usage_stats_spec.rb
sufia-6.6.0 spec/models/user_usage_stats_spec.rb
sufia-6.5.0 spec/models/user_usage_stats_spec.rb
sufia-6.4.0 spec/models/user_usage_stats_spec.rb