...@@ -3,7 +3,6 @@ ...@@ -3,7 +3,6 @@
return if Rails.env.production? return if Rails.env.production?
require 'graphql/rake_task' require 'graphql/rake_task'
require 'gitlab/graphql/docs/renderer'
namespace :gitlab do namespace :gitlab do
OUTPUT_DIR = Rails.root.join("doc/api/graphql/reference") OUTPUT_DIR = Rails.root.join("doc/api/graphql/reference")
... ...
......
#!/usr/bin/env ruby #!/usr/bin/env ruby
# We don't have auto-loading here # We don't have auto-loading here
require_relative '../lib/gitlab'
require_relative '../lib/gitlab/popen' require_relative '../lib/gitlab/popen'
require_relative '../lib/gitlab/popen/runner' require_relative '../lib/gitlab/popen/runner'
... ...
......
...@@ -3,5 +3,13 @@ ...@@ -3,5 +3,13 @@
FactoryBot.define do FactoryBot.define do
factory :user_highest_role do factory :user_highest_role do
user user
trait :maintainer do
highest_access_level { Gitlab::Access::MAINTAINER }
end
trait :developer do
highest_access_level { Gitlab::Access::DEVELOPER }
end
end end
end end
...@@ -11,9 +11,6 @@ require_relative '../config/settings' ...@@ -11,9 +11,6 @@ require_relative '../config/settings'
require_relative 'support/rspec' require_relative 'support/rspec'
require 'active_support/all' require 'active_support/all'
unless ActiveSupport::Dependencies.autoload_paths.frozen?
ActiveSupport::Dependencies.autoload_paths << 'lib' ActiveSupport::Dependencies.autoload_paths << 'lib'
ActiveSupport::Dependencies.autoload_paths << 'ee/lib' ActiveSupport::Dependencies.autoload_paths << 'ee/lib'
end
ActiveSupport::XmlMini.backend = 'Nokogiri' ActiveSupport::XmlMini.backend = 'Nokogiri'
# frozen_string_literal: true # frozen_string_literal: true
require 'spec_helper' require 'spec_helper'
require 'fogbugz'
describe Gitlab::FogbugzImport::Importer do describe Gitlab::FogbugzImport::Importer do
let(:project) { create(:project_empty_repo) } let(:project) { create(:project_empty_repo) }
... ...
......
# frozen_string_literal: true # frozen_string_literal: true
require 'spec_helper' require 'spec_helper'
require 'gitlab/graphql/docs/renderer'
describe Gitlab::Graphql::Docs::Renderer do describe Gitlab::Graphql::Docs::Renderer do
describe '#contents' do describe '#contents' do
... ...
......
...@@ -10,4 +10,20 @@ describe UserHighestRole do ...@@ -10,4 +10,20 @@ describe UserHighestRole do
describe 'validations' do describe 'validations' do
it { is_expected.to validate_inclusion_of(:highest_access_level).in_array([nil, *Gitlab::Access.all_values]) } it { is_expected.to validate_inclusion_of(:highest_access_level).in_array([nil, *Gitlab::Access.all_values]) }
end end
describe 'scopes' do
describe '.with_highest_access_level' do
let(:developer_access_level) { Gitlab::Access::DEVELOPER }
let!(:developer) { create(:user_highest_role, :developer) }
let!(:another_developer) { create(:user_highest_role, :developer) }
let!(:maintainer) { create(:user_highest_role, :maintainer) }
it 'only returns entry for developer access level' do
expect(described_class.with_highest_access_level(developer_access_level)).to contain_exactly(
developer,
another_developer
)
end
end
end
end end
# frozen_string_literal: true # frozen_string_literal: true
require 'fast_spec_helper' require 'fast_spec_helper'
require_relative '../../app/services/service_response'
ActiveSupport::Dependencies.autoload_paths << 'app/services'
describe ServiceResponse do describe ServiceResponse do
describe '.success' do describe '.success' do
... ...
......
...@@ -95,5 +95,19 @@ describe ErrorTrackingIssueLinkWorker do ...@@ -95,5 +95,19 @@ describe ErrorTrackingIssueLinkWorker do
it_behaves_like 'attempts to create a link via plugin' it_behaves_like 'attempts to create a link via plugin'
end end
context 'when Sentry repos request errors' do
it 'falls back to creating a link via plugin' do
expect_next_instance_of(Sentry::Client) do |client|
expect(client).to receive(:repos).with('sentry-org').and_raise(Sentry::Client::Error)
expect(client)
.to receive(:create_issue_link)
.with(nil, sentry_issue.sentry_issue_identifier, issue)
.and_return(true)
end
expect(subject).to be true
end
end
end end
end end
No preview for this file type