Skip to content
代码片段 群组 项目
未验证 提交 49a6a243 编辑于 作者: Brian Williams's avatar Brian Williams 提交者: GitLab
浏览文件

Merge branch '466644-fix-unknown-attribute-bug-when-tracking-cs-3' into 'master'

No related branches found
No related tags found
无相关合并请求
......@@ -8,32 +8,48 @@
describe 'POST /usage_data/track_event' do
let(:endpoint) { '/usage_data/track_event' }
context 'with usage ping enabled' do
before do
stub_application_setting(usage_ping_enabled: true, use_clickhouse_for_analytics: true)
end
context 'with AI related metric' do
let_it_be(:additional_properties) do
{
language: 'ruby',
timestamp: '2024-01-01',
unrelated_info: 'bar'
}
end
let(:event_name) { 'code_suggestion_shown_in_ide' }
before do
stub_application_setting(usage_ping_enabled: true)
stub_feature_flags(track_ai_metrics_in_usage_data: true)
end
context 'with AI related metric' do
let_it_be(:additional_properties) do
{
language: 'ruby',
timestamp: '2024-01-01',
unrelated_info: 'bar'
}
end
it 'triggers AI tracking' do
expect(Gitlab::Tracking::AiTracking).to receive(:track_event)
.with(
event_name,
additional_properties.merge(user: user)
).and_call_original
let(:event_name) { 'code_suggestion_shown_in_ide' }
post api(endpoint, user), params: {
event: event_name,
additional_properties: additional_properties
}
expect(response).to have_gitlab_http_status(:ok)
end
context 'with transition approach' do
before do
stub_feature_flags(track_ai_metrics_in_usage_data: true)
allow(Gitlab::Tracking::AiTracking)
.to receive(:track_via_code_suggestions?).with(event_name, anything).and_return(true)
end
it 'triggers AI tracking' do
expect(Gitlab::Tracking::AiTracking).to receive(:track_event)
.with(
event_name,
additional_properties.merge(user: user)
).and_call_original
it 'does not trigger AI tracking' do
expect(Gitlab::Tracking::AiTracking).not_to receive(:track_event)
post api(endpoint, user), params: {
event: event_name,
......@@ -42,24 +58,6 @@
expect(response).to have_gitlab_http_status(:ok)
end
context 'with transition approach' do
before do
allow(Gitlab::Tracking::AiTracking)
.to receive(:track_via_code_suggestions?).with(event_name, anything).and_return(true)
end
it 'does not trigger AI tracking' do
expect(Gitlab::Tracking::AiTracking).not_to receive(:track_event)
post api(endpoint, user), params: {
event: event_name,
additional_properties: additional_properties
}
expect(response).to have_gitlab_http_status(:ok)
end
end
end
end
end
......
0% 加载中 .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册