diff options
author | James Lopez <james@jameslopez.es> | 2016-11-24 16:12:30 +0100 |
---|---|---|
committer | James Lopez <james@jameslopez.es> | 2017-02-06 15:24:50 +0100 |
commit | 2e54454e6165a34004678eb45de3530f26a2ae2a (patch) | |
tree | a0b243bb62b870709e506eb00eeebc9cc361f727 | |
parent | 178626ed6114055d756c7d4a13d5f5eec8fa2a85 (diff) | |
download | gitlab-ce-2e54454e6165a34004678eb45de3530f26a2ae2a.tar.gz |
Add limit to the number of events showed in cycle analytics and spec
-rwxr-xr-x | bin/changelog | 2 | ||||
-rw-r--r-- | changelogs/unreleased/fix-cycle-analytics-events-limit.yml | 4 | ||||
-rw-r--r-- | spec/lib/gitlab/cycle_analytics/events_query_spec.rb | 35 |
3 files changed, 41 insertions, 0 deletions
diff --git a/bin/changelog b/bin/changelog index 4c894f8ff5b..70be4058137 100755 --- a/bin/changelog +++ b/bin/changelog @@ -80,6 +80,8 @@ class ChangelogEntry unless options.dry_run write + %x{git add #{file_path}} + amend_commit if options.amend end end diff --git a/changelogs/unreleased/fix-cycle-analytics-events-limit.yml b/changelogs/unreleased/fix-cycle-analytics-events-limit.yml new file mode 100644 index 00000000000..152b37ca430 --- /dev/null +++ b/changelogs/unreleased/fix-cycle-analytics-events-limit.yml @@ -0,0 +1,4 @@ +--- +title: Add limit to the number of events showed in cycle analytics +merge_request: +author: diff --git a/spec/lib/gitlab/cycle_analytics/events_query_spec.rb b/spec/lib/gitlab/cycle_analytics/events_query_spec.rb new file mode 100644 index 00000000000..c00e71f6672 --- /dev/null +++ b/spec/lib/gitlab/cycle_analytics/events_query_spec.rb @@ -0,0 +1,35 @@ +require 'spec_helper' + +describe Gitlab::CycleAnalytics::EventsQuery do + let(:max_events) { 3 } + let(:project) { create(:project) } + let(:user) { create(:user, :admin) } + let(:options) { { from: 30.days.ago } } + + let(:issue_event) do + Gitlab::CycleAnalytics::IssueEvent.new(project: project, options: options) + end + + subject { described_class.new(project: project, options: options).execute(issue_event) } + + before do + allow_any_instance_of(Gitlab::ReferenceExtractor).to receive(:issues).and_return(Issue.all) + stub_const('Gitlab::CycleAnalytics::EventsQuery::MAX_EVENTS', max_events) + + setup_events(count: 5) + end + + it 'limits the rows the max number' do + expect(subject.count).to eq(max_events) + end + + def setup_events(count:) + count.times do + issue = create(:issue, project: project, created_at: 2.days.ago) + milestone = create(:milestone, project: project) + + issue.update(milestone: milestone) + create_merge_request_closing_issue(issue) + end + end +end |