summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Lopez <james@jameslopez.es>2016-11-04 16:16:15 +0100
committerJames Lopez <james@jameslopez.es>2016-11-17 08:22:57 +0100
commit83130ae877ffa946ef270743905f8fe1ac123305 (patch)
treeaca655226fa50d10baa36ecf2e694e69390bcee6
parentbeeb64610e6a1907d6675b535659a519db129453 (diff)
downloadgitlab-ce-83130ae877ffa946ef270743905f8fe1ac123305.tar.gz
Updated production events with new fields
-rw-r--r--lib/gitlab/cycle_analytics/events.rb2
-rw-r--r--lib/gitlab/cycle_analytics/query_config.rb6
-rw-r--r--spec/lib/gitlab/cycle_analytics/events_spec.rb19
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