summaryrefslogtreecommitdiff
path: root/spec/support/stub_snowplow.rb
blob: c6e3b40972f6994f41bde8c52c6eb0015b8b492c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# frozen_string_literal: true

module StubSnowplow
  def stub_snowplow
    # Using a high buffer size to not cause early flushes
    buffer_size = 100
    # WebMock is set up to allow requests to `localhost`
    host = 'localhost'

    # rubocop:disable RSpec/AnyInstanceOf
    allow_any_instance_of(Gitlab::Tracking::Destinations::Snowplow)
      .to receive(:emitter)
      .and_return(SnowplowTracker::Emitter.new(host, buffer_size: buffer_size))
    # rubocop:enable RSpec/AnyInstanceOf

    stub_application_setting(snowplow_enabled: true)

    allow(SnowplowTracker::SelfDescribingJson).to receive(:new).and_call_original
    allow(Gitlab::Tracking).to receive(:event).and_call_original # rubocop:disable RSpec/ExpectGitlabTracking
  end
end