diff options
author | Gabriel Mazetto <brodock@gmail.com> | 2018-08-15 01:40:29 +0200 |
---|---|---|
committer | Gabriel Mazetto <brodock@gmail.com> | 2018-08-16 21:31:19 +0200 |
commit | 1a54986c166fb13a6a27afcafaa055e1a1749e38 (patch) | |
tree | 46e6f80a4726f3402bd4b5de28d55c8f83caf9f1 /spec/tasks | |
parent | 696a5fce687364ec718eeef44d923a686c9e1624 (diff) | |
download | gitlab-ce-1a54986c166fb13a6a27afcafaa055e1a1749e38.tar.gz |
Refactor SiteStatistics to extract refresh logic into a rake task
Diffstat (limited to 'spec/tasks')
-rw-r--r-- | spec/tasks/gitlab/site_statistics_rake_spec.rb | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/spec/tasks/gitlab/site_statistics_rake_spec.rb b/spec/tasks/gitlab/site_statistics_rake_spec.rb new file mode 100644 index 00000000000..20f0df65e63 --- /dev/null +++ b/spec/tasks/gitlab/site_statistics_rake_spec.rb @@ -0,0 +1,24 @@ +# frozen_string_literal: true +require 'rake_helper' + +describe 'rake gitlab:refresh_site_statistics' do + before do + Rake.application.rake_require 'tasks/gitlab/site_statistics' + + create(:project) + SiteStatistic.fetch.update(repositories_count: 0, wikis_count: 0) + end + + let(:task) { 'gitlab:refresh_site_statistics' } + + it 'recalculates existing counters' do + run_rake_task(task) + + expect(SiteStatistic.fetch.repositories_count).to eq(1) + expect(SiteStatistic.fetch.wikis_count).to eq(1) + end + + it 'displays message listing counters' do + expect { run_rake_task(task) }.to output(/Updating Site Statistics counters:.* Repositories\.\.\. OK!.* Wikis\.\.\. OK!/m).to_stdout + end +end |