From 83130ae877ffa946ef270743905f8fe1ac123305 Mon Sep 17 00:00:00 2001 From: James Lopez Date: Fri, 4 Nov 2016 16:16:15 +0100 Subject: Updated production events with new fields --- lib/gitlab/cycle_analytics/events.rb | 2 +- lib/gitlab/cycle_analytics/query_config.rb | 6 ++++-- spec/lib/gitlab/cycle_analytics/events_spec.rb | 19 +++++++++++++++---- 3 files changed, 20 insertions(+), 7 deletions(-) diff --git a/lib/gitlab/cycle_analytics/events.rb b/lib/gitlab/cycle_analytics/events.rb index 1a78bea3e18..7d06c5e890f 100644 --- a/lib/gitlab/cycle_analytics/events.rb +++ b/lib/gitlab/cycle_analytics/events.rb @@ -17,7 +17,7 @@ module Gitlab event['total_time'] = distance_of_time_in_words(event['total_time'].to_f) commit = first_time_reference_commit(event.delete('commits'), event) event['title'] = commit.title - event['url'] = Gitlab::LightUrlBuilder.build(entity: :commit_url, project: @project, id: commit.id) + event['url'] = Gitlab::LightUrlBuilder.build(entity: :commit_url, project: @project, id: commit.id) event['sha'] = commit.short_id event['author_name'] = commit.author.name event['author_profile_url'] = Gitlab::LightUrlBuilder.build(entity: :user, id: commit.author.username) diff --git a/lib/gitlab/cycle_analytics/query_config.rb b/lib/gitlab/cycle_analytics/query_config.rb index 68692f3a4e6..9c8d31c1a97 100644 --- a/lib/gitlab/cycle_analytics/query_config.rb +++ b/lib/gitlab/cycle_analytics/query_config.rb @@ -87,9 +87,11 @@ module Gitlab end_time_attrs: mr_metrics_table[:first_deployed_to_production_at], projections: [issue_table[:title], issue_table[:iid], + issue_table[:id], issue_table[:created_at], - user_table[:name], - user_table[:email]] + user_table[:name].as('author_name'), + user_table[:username].as('author_username'), + user_table[:id].as('author_id')] } end end diff --git a/spec/lib/gitlab/cycle_analytics/events_spec.rb b/spec/lib/gitlab/cycle_analytics/events_spec.rb index 815e70ab6a8..29cc3011542 100644 --- a/spec/lib/gitlab/cycle_analytics/events_spec.rb +++ b/spec/lib/gitlab/cycle_analytics/events_spec.rb @@ -21,6 +21,10 @@ describe Gitlab::CycleAnalytics::Events do expect(subject.issue_events.first['title']).to eq(context.title) end + it 'has the URL' do + expect(subject.issue_events.first['url']).not_to be_nil + end + it 'has an iid' do expect(subject.issue_events.first['iid']).to eq(context.iid.to_s) end @@ -216,7 +220,6 @@ describe Gitlab::CycleAnalytics::Events do deploy_master end - it 'has the name' do expect(subject.staging_events.first['name']).not_to be_nil end @@ -274,6 +277,10 @@ describe Gitlab::CycleAnalytics::Events do expect(subject.production_events.first['title']).to eq(context.title) end + it 'has the URL' do + expect(subject.production_events.first['url']).not_to be_nil + end + it 'has an iid' do expect(subject.production_events.first['iid']).to eq(context.iid.to_s) end @@ -282,12 +289,16 @@ describe Gitlab::CycleAnalytics::Events do expect(subject.production_events.first['created_at']).to end_with('ago') end - it "has the author's email" do - expect(subject.production_events.first['email']).to eq(context.author.email) + it "has the author's URL" do + expect(subject.production_events.first['author_profile_url']).not_to be_nil + end + + it "has the author's avatar URL" do + expect(subject.production_events.first['author_avatar_url']).not_to be_nil end it "has the author's name" do - expect(subject.production_events.first['name']).to eq(context.author.name) + expect(subject.production_events.first['author_name']).to eq(context.author.name) end end -- cgit v1.2.1