Commit 1f1ace5e authored by Alishan Ladhani's avatar Alishan Ladhani

Ensure that StandardContext comes first in the list of contexts

parent ee1e606f
...@@ -25,10 +25,10 @@ module Gitlab ...@@ -25,10 +25,10 @@ module Gitlab
end end
def event(category, action, label: nil, property: nil, value: nil, context: [], project: nil, user: nil, namespace: nil) # rubocop:disable Metrics/ParameterLists def event(category, action, label: nil, property: nil, value: nil, context: [], project: nil, user: nil, namespace: nil) # rubocop:disable Metrics/ParameterLists
context += [Tracking::StandardContext.new(project: project, user: user, namespace: namespace).to_context] contexts = [Tracking::StandardContext.new(project: project, user: user, namespace: namespace).to_context, *context]
snowplow.event(category, action, label: label, property: property, value: value, context: context) snowplow.event(category, action, label: label, property: property, value: value, context: contexts)
product_analytics.event(category, action, label: label, property: property, value: value, context: context) product_analytics.event(category, action, label: label, property: property, value: value, context: contexts)
end end
def self_describing_event(schema_url, data:, context: nil) def self_describing_event(schema_url, data:, context: nil)
......
...@@ -61,8 +61,8 @@ RSpec.describe Gitlab::Tracking do ...@@ -61,8 +61,8 @@ RSpec.describe Gitlab::Tracking do
expect(args[:property]).to eq('property') expect(args[:property]).to eq('property')
expect(args[:value]).to eq(1.5) expect(args[:value]).to eq(1.5)
expect(args[:context].length).to eq(2) expect(args[:context].length).to eq(2)
expect(args[:context].first).to eq(other_context) expect(args[:context].first.to_json[:schema]).to eq(Gitlab::Tracking::StandardContext::GITLAB_STANDARD_SCHEMA_URL)
expect(args[:context].last.to_json[:schema]).to eq(Gitlab::Tracking::StandardContext::GITLAB_STANDARD_SCHEMA_URL) expect(args[:context].last).to eq(other_context)
end end
described_class.event('category', 'action', label: 'label', property: 'property', value: 1.5, described_class.event('category', 'action', label: 'label', property: 'property', value: 1.5,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment