summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhil Hughes <me@iamphill.com>2016-02-22 17:37:26 +0000
committerPhil Hughes <me@iamphill.com>2016-02-22 17:37:26 +0000
commit62f4a9de1997fb1281e4d73753d157d2e29940c4 (patch)
treec6c1fa4b4d9a0e768f625db7021d4a2cd9c13874
parent5803a5308f5a7a84cc84dd0a7d8a89565bae0717 (diff)
downloadgitlab-ce-62f4a9de1997fb1281e4d73753d157d2e29940c4.tar.gz
Users don't get instructions to push to other users empty projects
Fixes #12518
-rw-r--r--app/views/projects/empty.html.haml2
-rw-r--r--features/explore/projects.feature1
-rw-r--r--features/project/project.feature10
-rw-r--r--features/steps/project/project.rb10
-rw-r--r--features/steps/shared/paths.rb4
5 files changed, 26 insertions, 1 deletions
diff --git a/app/views/projects/empty.html.haml b/app/views/projects/empty.html.haml
index b34d106d565..6ad7b05155a 100644
--- a/app/views/projects/empty.html.haml
+++ b/app/views/projects/empty.html.haml
@@ -18,7 +18,7 @@
= link_to "adding README", new_readme_path, class: 'underlined-link'
file to this project.
-- if can?(current_user, :download_code, @project)
+- if can?(current_user, :push_code, @project)
%div{ class: container_class }
.prepend-top-20
.empty_wrapper
diff --git a/features/explore/projects.feature b/features/explore/projects.feature
index 629859e960d..7df6b6f09ba 100644
--- a/features/explore/projects.feature
+++ b/features/explore/projects.feature
@@ -87,6 +87,7 @@ Feature: Explore Projects
Scenario: I visit public project issues page as a non authorized user
Given I visit project "Community" page
+ Then I should not see command line instructions
And I visit "Community" issues page
Then I should see list of issues for "Community" project
diff --git a/features/project/project.feature b/features/project/project.feature
index 1a53945eb04..c1e04ada7ca 100644
--- a/features/project/project.feature
+++ b/features/project/project.feature
@@ -86,3 +86,13 @@ Feature: Project
Given I click notifications drop down button
When I choose Mention setting
Then I should see Notification saved message
+
+ Scenario: I should see command line instructions
+ Given I own an empty project
+ And I visit my empty project page
+ And I create bare repo
+ Then I should see command line instructions
+
+ Scenario: I should not see command line instructions
+ Given I visit an empty project page
+ Then I should not see command line instructions
diff --git a/features/steps/project/project.rb b/features/steps/project/project.rb
index 37bf52b4a95..ef185861e00 100644
--- a/features/steps/project/project.rb
+++ b/features/steps/project/project.rb
@@ -144,4 +144,14 @@ class Spinach::Features::Project < Spinach::FeatureSteps
expect(page).to have_content 'Notification settings saved'
end
end
+
+ step 'I create bare repo' do
+ click_link 'Create empty bare repository'
+ end
+
+ step 'I should see command line instructions' do
+ page.within ".empty_wrapper" do
+ expect(page).to have_content("Command line instructions")
+ end
+ end
end
diff --git a/features/steps/shared/paths.rb b/features/steps/shared/paths.rb
index f4df4874d2f..0f9835e7356 100644
--- a/features/steps/shared/paths.rb
+++ b/features/steps/shared/paths.rb
@@ -447,6 +447,10 @@ module SharedPaths
visit namespace_project_path(project.namespace, project)
end
+ step "I should not see command line instructions" do
+ expect(page).not_to have_css('.empty_wrapper')
+ end
+
# ----------------------------------------
# Public Projects
# ----------------------------------------