debian-mirror-gitlab/spec/support/shared_examples/controllers/unique_visits_shared_examples.rb

35 lines
1.1 KiB
Ruby
Raw Normal View History

2020-07-28 23:09:34 +05:30
# frozen_string_literal: true
RSpec.shared_examples 'tracking unique visits' do |method|
2020-11-24 15:15:51 +05:30
let(:request_params) { {} }
2020-07-28 23:09:34 +05:30
it 'tracks unique visit if the format is HTML' do
2021-04-29 21:17:54 +05:30
expect(Gitlab::UsageDataCounters::HLLRedisCounter)
.to receive(:track_event).with(target_id, values: kind_of(String))
2020-07-28 23:09:34 +05:30
get method, params: request_params, format: :html
end
it 'tracks unique visit if DNT is not enabled' do
2021-04-29 21:17:54 +05:30
expect(Gitlab::UsageDataCounters::HLLRedisCounter)
.to receive(:track_event).with(target_id, values: kind_of(String))
2020-07-28 23:09:34 +05:30
request.headers['DNT'] = '0'
get method, params: request_params, format: :html
end
it 'does not track unique visit if DNT is enabled' do
2021-04-29 21:17:54 +05:30
expect(Gitlab::UsageDataCounters::HLLRedisCounter).not_to receive(:track_event)
2020-07-28 23:09:34 +05:30
request.headers['DNT'] = '1'
get method, params: request_params, format: :html
end
it 'does not track unique visit if the format is JSON' do
2021-04-29 21:17:54 +05:30
expect(Gitlab::UsageDataCounters::HLLRedisCounter).not_to receive(:track_event)
2020-07-28 23:09:34 +05:30
get method, params: request_params, format: :json
end
end