diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-10-05 16:54:15 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-10-05 16:54:15 +0300 |
commit | be834a25982746ffd85252ff502df42bb88cb9d5 (patch) | |
tree | b4d6a8ba0931e12fac08f05abea33a3b8ec2c8a2 /spec/lib/api | |
parent | ee925a3597f27e92f83a50937a64068109675b3d (diff) |
Add latest changes from gitlab-org/gitlab@13-5-stable-eev13.5.0-rc32
Diffstat (limited to 'spec/lib/api')
-rw-r--r-- | spec/lib/api/github/entities_spec.rb | 31 | ||||
-rw-r--r-- | spec/lib/api/helpers/packages/dependency_proxy_helpers_spec.rb | 2 | ||||
-rw-r--r-- | spec/lib/api/helpers_spec.rb | 19 |
3 files changed, 38 insertions, 14 deletions
diff --git a/spec/lib/api/github/entities_spec.rb b/spec/lib/api/github/entities_spec.rb new file mode 100644 index 00000000000..00ea60c5d65 --- /dev/null +++ b/spec/lib/api/github/entities_spec.rb @@ -0,0 +1,31 @@ +# frozen_string_literal: true + +require 'spec_helper' + +RSpec.describe API::Github::Entities do + describe API::Github::Entities::User do + let(:user) { create(:user, username: username) } + let(:username) { 'name_of_user' } + let(:gitlab_protocol_and_host) { "#{Gitlab.config.gitlab.protocol}://#{Gitlab.config.gitlab.host}" } + let(:expected_user_url) { "#{gitlab_protocol_and_host}/#{username}" } + let(:entity) { described_class.new(user) } + + subject { entity.as_json } + + specify :aggregate_failure do + expect(subject[:id]).to eq user.id + expect(subject[:login]).to eq 'name_of_user' + expect(subject[:url]).to eq expected_user_url + expect(subject[:html_url]).to eq expected_user_url + expect(subject[:avatar_url]).to include('https://www.gravatar.com/avatar') + end + + context 'with avatar' do + let(:user) { create(:user, :with_avatar, username: username) } + + specify do + expect(subject[:avatar_url]).to include("#{gitlab_protocol_and_host}/uploads/-/system/user/avatar/") + end + end + end +end diff --git a/spec/lib/api/helpers/packages/dependency_proxy_helpers_spec.rb b/spec/lib/api/helpers/packages/dependency_proxy_helpers_spec.rb index ccf96bcbad6..6d06fc3618d 100644 --- a/spec/lib/api/helpers/packages/dependency_proxy_helpers_spec.rb +++ b/spec/lib/api/helpers/packages/dependency_proxy_helpers_spec.rb @@ -24,6 +24,7 @@ RSpec.describe API::Helpers::Packages::DependencyProxyHelpers do shared_examples 'executing redirect' do it 'redirects to package registry' do + expect(helper).to receive(:track_event).with('npm_request_forward').once expect(helper).to receive(:registry_url).once expect(helper).to receive(:redirect).once expect(helper).to receive(:fallback).never @@ -63,6 +64,7 @@ RSpec.describe API::Helpers::Packages::DependencyProxyHelpers do let(:package_type) { pkg_type } it 'raises an error' do + allow(helper).to receive(:track_event) expect { subject }.to raise_error(ArgumentError, "Can't build registry_url for package_type #{package_type}") end end diff --git a/spec/lib/api/helpers_spec.rb b/spec/lib/api/helpers_spec.rb index 51a45dff6a4..8e738af0fa3 100644 --- a/spec/lib/api/helpers_spec.rb +++ b/spec/lib/api/helpers_spec.rb @@ -191,41 +191,32 @@ RSpec.describe API::Helpers do describe '#increment_unique_values' do let(:value) { '9f302fea-f828-4ca9-aef4-e10bd723c0b3' } - let(:event_name) { 'my_event' } + let(:event_name) { 'g_compliance_dashboard' } let(:unknown_event) { 'unknown' } let(:feature) { "usage_data_#{event_name}" } + before do + skip_feature_flags_yaml_validation + end + context 'with feature enabled' do before do stub_feature_flags(feature => true) end it 'tracks redis hll event' do - stub_application_setting(usage_ping_enabled: true) - expect(Gitlab::UsageDataCounters::HLLRedisCounter).to receive(:track_event).with(value, event_name) subject.increment_unique_values(event_name, value) end - it 'does not track event usage ping is not enabled' do - stub_application_setting(usage_ping_enabled: false) - expect(Gitlab::UsageDataCounters::HLLRedisCounter).not_to receive(:track_event) - - subject.increment_unique_values(event_name, value) - end - it 'logs an exception for unknown event' do - stub_application_setting(usage_ping_enabled: true) - expect(Gitlab::AppLogger).to receive(:warn).with("Redis tracking event failed for event: #{unknown_event}, message: Unknown event #{unknown_event}") subject.increment_unique_values(unknown_event, value) end it 'does not track event for nil values' do - stub_application_setting(usage_ping_enabled: true) - expect(Gitlab::UsageDataCounters::HLLRedisCounter).not_to receive(:track_event) subject.increment_unique_values(unknown_event, nil) |