Skip to content
Snippets Groups Projects
Commit e7238677 authored by GitLab Bot's avatar GitLab Bot
Browse files

Add latest changes from gitlab-org/gitlab@master

parent c2b98d3d
No related branches found
No related tags found
No related merge requests found
Showing
with 77 additions and 6 deletions
Loading
Loading
@@ -149,6 +149,14 @@ describe Projects::Serverless::FunctionsController do
 
include_examples 'GET #show with valid data'
end
context 'on Knative 0.9.0' do
before do
prepare_knative_stubs(knative_09_service(knative_stub_options))
end
include_examples 'GET #show with valid data'
end
end
end
 
Loading
Loading
@@ -210,6 +218,14 @@ describe Projects::Serverless::FunctionsController do
 
include_examples 'GET #index with data'
end
context 'on Knative 0.9.0' do
before do
prepare_knative_stubs(knative_09_service(knative_stub_options))
end
include_examples 'GET #index with data'
end
end
 
def prepare_knative_stubs(knative_service)
Loading
Loading
Loading
Loading
@@ -45,7 +45,7 @@ describe Projects::TreeController do
 
it 'redirects' do
expect(subject)
.to redirect_to("/#{project.full_path}/tree/master")
.to redirect_to("/#{project.full_path}/-/tree/master")
end
end
 
Loading
Loading
@@ -60,7 +60,7 @@ describe Projects::TreeController do
 
it 'redirects' do
expect(subject)
.to redirect_to("/#{project.full_path}/tree/empty-branch")
.to redirect_to("/#{project.full_path}/-/tree/empty-branch")
end
end
 
Loading
Loading
@@ -125,7 +125,7 @@ describe Projects::TreeController do
let(:id) { 'master/README.md' }
 
it 'redirects' do
redirect_url = "/#{project.full_path}/blob/master/README.md"
redirect_url = "/#{project.full_path}/-/blob/master/README.md"
expect(subject)
.to redirect_to(redirect_url)
end
Loading
Loading
@@ -153,7 +153,7 @@ describe Projects::TreeController do
 
it 'redirects to the new directory' do
expect(subject)
.to redirect_to("/#{project.full_path}/tree/#{branch_name}/#{path}")
.to redirect_to("/#{project.full_path}/-/tree/#{branch_name}/#{path}")
expect(flash[:notice]).to eq('The directory has been successfully created.')
end
end
Loading
Loading
@@ -164,7 +164,7 @@ describe Projects::TreeController do
 
it 'does not allow overwriting of existing files' do
expect(subject)
.to redirect_to("/#{project.full_path}/tree/master")
.to redirect_to("/#{project.full_path}/-/tree/master")
expect(flash[:alert]).to eq('A file with this name already exists')
end
end
Loading
Loading
Loading
Loading
@@ -943,7 +943,7 @@ describe ProjectsController do
end
 
it 'renders JSON body with image links expanded' do
expanded_path = "/#{project_with_repo.full_path}/raw/master/files/images/logo-white.png"
expanded_path = "/#{project_with_repo.full_path}/-/raw/master/files/images/logo-white.png"
 
post :preview_markdown, params: preview_markdown_params
 
Loading
Loading
Loading
Loading
@@ -6,6 +6,7 @@ describe 'Dashboard snippets' do
context 'when the project has snippets' do
let(:project) { create(:project, :public) }
let!(:snippets) { create_list(:project_snippet, 2, :public, author: project.owner, project: project) }
before do
allow(Snippet).to receive(:default_per_page).and_return(1)
sign_in(project.owner)
Loading
Loading
@@ -13,10 +14,16 @@ describe 'Dashboard snippets' do
end
 
it_behaves_like 'paginated snippets'
it 'shows new snippet button in header' do
parent_element = page.find('.page-title-controls')
expect(parent_element).to have_link('New snippet')
end
end
 
context 'when there are no project snippets', :js do
let(:project) { create(:project, :public) }
before do
sign_in(project.owner)
visit dashboard_snippets_path
Loading
Loading
@@ -28,6 +35,11 @@ describe 'Dashboard snippets' do
expect(element).to have_content("Snippets are small pieces of code or notes that you want to keep.")
expect(element.find('.svg-content img')['src']).to have_content('illustrations/snippets_empty')
end
it 'shows new snippet button in main content area' do
parent_element = page.find('.row.empty-state')
expect(parent_element).to have_link('New snippet')
end
end
 
context 'filtering by visibility' do
Loading
Loading
@@ -76,4 +88,26 @@ describe 'Dashboard snippets' do
expect(page).to have_content(snippets[0].title)
end
end
context 'as an external user' do
let(:user) { create(:user, :external) }
before do
sign_in(user)
visit dashboard_snippets_path
end
context 'without snippets' do
it 'hides new snippet button' do
expect(page).not_to have_link('New snippet')
end
end
context 'with snippets' do
let!(:snippets) { create(:personal_snippet, author: user) }
it 'hides new snippet button' do
expect(page).not_to have_link('New snippet')
end
end
end
end
Loading
Loading
@@ -8,6 +8,7 @@ describe 'Thread Comments Snippet', :js do
let(:snippet) { create(:project_snippet, :private, project: project, author: user) }
 
before do
stub_feature_flags(snippets_vue: false)
project.add_maintainer(user)
sign_in(user)
 
Loading
Loading
Loading
Loading
@@ -70,6 +70,7 @@ describe 'issue move to another project' do
context 'user does not have permission to move the issue to a project', :js do
let!(:private_project) { create(:project, :private) }
let(:another_project) { create(:project) }
before do
another_project.add_guest(user)
end
Loading
Loading
Loading
Loading
@@ -6,6 +6,7 @@ describe "User views issues" do
let!(:closed_issue) { create(:closed_issue, project: project) }
let!(:open_issue1) { create(:issue, project: project) }
let!(:open_issue2) { create(:issue, project: project) }
set(:user) { create(:user) }
 
shared_examples "opens issue from list" do
Loading
Loading
Loading
Loading
@@ -9,6 +9,7 @@ describe 'User sorts merge requests' do
let!(:merge_request2) do
create(:merge_request_with_diffs, source_project: project, target_project: project, source_branch: 'merge-test')
end
set(:user) { create(:user) }
set(:group) { create(:group) }
set(:group_member) { create(:group_member, :maintainer, user: user, group: group) }
Loading
Loading
Loading
Loading
@@ -113,6 +113,7 @@ describe 'User views open merge requests' do
 
context 'when project is internal' do
let!(:merge_request) { create(:merge_request, source_project: project, target_project: project) }
set(:project) { create(:project, :internal, :repository) }
 
context 'when signed in' do
Loading
Loading
Loading
Loading
@@ -33,6 +33,7 @@ describe 'OAuth Login', :js, :allow_forgery_protection do
let(:remember_me) { false }
let(:user) { create(:omniauth_user, extern_uid: uid, provider: provider.to_s) }
let(:two_factor_user) { create(:omniauth_user, :two_factor, extern_uid: uid, provider: provider.to_s) }
provider == :salesforce ? let(:additional_info) { { extra: { email_verified: true } } } : let(:additional_info) { {} }
 
before do
Loading
Loading
Loading
Loading
@@ -34,6 +34,7 @@ describe 'Member autocomplete', :js do
 
context 'adding a new note on a Issue' do
let(:noteable) { create(:issue, author: author, project: project) }
before do
visit project_issue_path(project, noteable)
end
Loading
Loading
@@ -47,6 +48,7 @@ describe 'Member autocomplete', :js do
create(:merge_request, source_project: project,
target_project: project, author: author)
end
before do
visit project_merge_request_path(project, noteable)
end
Loading
Loading
Loading
Loading
@@ -194,6 +194,7 @@ describe 'Gcp Cluster', :js, :do_not_mock_admin_mode do
 
context 'when third party offers are disabled' do
let(:admin) { create(:admin) }
before do
stub_env('IN_MEMORY_APPLICATION_SETTINGS', 'false')
sign_in(admin)
Loading
Loading
Loading
Loading
@@ -193,6 +193,7 @@ describe 'Projects > Files > User edits files', :js do
 
context 'when the user already had a fork of the project', :js do
let!(:forked_project) { fork_project(project2, user, namespace: user.namespace, repository: true) }
before do
visit(project2_tree_path_root_ref)
wait_for_requests
Loading
Loading
Loading
Loading
@@ -18,6 +18,7 @@ describe 'Projects > Snippets > Create Snippet', :js do
 
context 'when a user is authenticated' do
before do
stub_feature_flags(snippets_vue: false)
project.add_maintainer(user)
sign_in(user)
 
Loading
Loading
@@ -76,6 +77,10 @@ describe 'Projects > Snippets > Create Snippet', :js do
end
 
context 'when a user is not authenticated' do
before do
stub_feature_flags(snippets_vue: false)
end
it 'shows a public snippet on the index page but not the New snippet button' do
snippet = create(:project_snippet, :public, project: project)
 
Loading
Loading
Loading
Loading
@@ -8,6 +8,7 @@ describe 'Projects > Snippets > Project snippet', :js do
let(:snippet) { create(:project_snippet, project: project, file_name: file_name, content: content) }
 
before do
stub_feature_flags(snippets_vue: false)
project.add_maintainer(user)
sign_in(user)
end
Loading
Loading
Loading
Loading
@@ -8,6 +8,7 @@ describe 'Projects > Snippets > User comments on a snippet', :js do
let(:user) { create(:user) }
 
before do
stub_feature_flags(snippets_vue: false)
project.add_maintainer(user)
sign_in(user)
 
Loading
Loading
Loading
Loading
@@ -8,6 +8,7 @@ describe 'Projects > Snippets > User deletes a snippet' do
let(:user) { create(:user) }
 
before do
stub_feature_flags(snippets_vue: false)
project.add_maintainer(user)
sign_in(user)
 
Loading
Loading
Loading
Loading
@@ -8,6 +8,7 @@ describe 'Projects > Snippets > User updates a snippet' do
let(:user) { create(:user) }
 
before do
stub_feature_flags(snippets_vue: false)
project.add_maintainer(user)
sign_in(user)
 
Loading
Loading
Loading
Loading
@@ -7,6 +7,7 @@ describe 'Reportable note on snippets', :js do
let(:project) { create(:project) }
 
before do
stub_feature_flags(snippets_vue: false)
project.add_maintainer(user)
sign_in(user)
end
Loading
Loading
Loading
Loading
@@ -53,6 +53,7 @@ describe 'Internal Group access' do
 
describe 'GET /groups/:path/merge_requests' do
let(:project) { create(:project, :internal, :repository, group: group) }
subject { merge_requests_group_path(group) }
 
it { is_expected.to be_allowed_for(:admin) }
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment