diff --git a/features/explore/new_menu.feature b/features/explore/new_menu.feature
deleted file mode 100644
index b920a319b80fc08a72a7c3d81c98bbc1667f672e..0000000000000000000000000000000000000000
--- a/features/explore/new_menu.feature
+++ /dev/null
@@ -1,55 +0,0 @@
-@explore
-Feature: New Menu
-Background:
-  Given I sign in as "John Doe"
-  And "John Doe" is owner of group "Owned"
-  And I own project "Shop"
-  And I visit dashboard page
-
-  @javascript
-  Scenario: I should see New Projects page
-    When I visit dashboard page
-    And I click "New project" in top right menu
-    Then I see "New Project" page
-
-  @javascript
-  Scenario: I should see New Group page
-    When I visit dashboard page
-    And I click "New group" in top right menu
-    Then I see "New Group" page
-
-  @javascript
-  Scenario: I should see New Snippet page
-    When I visit dashboard page
-    And I click "New snippet" in top right menu
-    Then I see "New Snippet" page
-
-  @javascript
-  Scenario: I should see New Issue page
-    When I visit project "Shop" page
-    And I click "New issue" in top right menu
-    Then I see "New Issue" page
-
-  @javascript
-  Scenario: I should see New Merge Request page
-    When I visit project "Shop" page
-    And I click "New merge request" in top right menu
-    Then I see "New Merge Request" page
-
-  @javascript
-  Scenario: I should see New Project Snippet page
-    When I visit project "Shop" page
-    And I click "New project snippet" in top right menu
-    Then I see "New Snippet" page
-
-  @javascript
-  Scenario: I should see New Group Project page
-    When I visit group "Owned" page
-    And I click "New group project" in top right menu
-    Then I see "New Project" page
-
-  @javascript
-  Scenario: I should see New Subgroup page
-    When I visit group "Owned" page
-    And I click "New subgroup" in top right menu
-    Then I see "New Group" page
diff --git a/features/steps/explore/new_menu.rb b/features/steps/explore/new_menu.rb
deleted file mode 100644
index 17fd3a9a8ceebf0ffe43a2af432b9222911ad5e5..0000000000000000000000000000000000000000
--- a/features/steps/explore/new_menu.rb
+++ /dev/null
@@ -1,81 +0,0 @@
-class Spinach::Features::NewMenu < Spinach::FeatureSteps
-  include SharedAuthentication
-  include SharedPaths
-  include SharedProject
-  include SharedGroup
-  include SharedUser
-
-  step 'I click "New project" in top right menu' do
-    click_topmenuitem("New project")
-  end
-
-  step 'I click "New group" in top right menu' do
-    click_topmenuitem("New group")
-  end
-
-  step 'I click "New snippet" in top right menu' do
-    click_topmenuitem("New snippet")
-  end
-
-  step 'I click "New project snippet" in top right menu' do
-    page.within '.header-content' do
-      find('.header-new-dropdown-toggle').trigger('click')
-      expect(page).to have_selector('.header-new.dropdown.open', count: 1)
-      find('.header-new-project-snippet a').trigger('click')
-    end
-  end
-
-  step 'I click "New issue" in top right menu' do
-    click_topmenuitem("New issue")
-  end
-
-  step 'I click "New merge request" in top right menu' do
-    click_topmenuitem("New merge request")
-  end
-
-  step 'I click "New subgroup" in top right menu' do
-    click_topmenuitem("New subgroup")
-  end
-
-  step 'I click "New group project" in top right menu' do
-    page.within '.header-content' do
-      find('.header-new-dropdown-toggle').trigger('click')
-      expect(page).to have_selector('.header-new.dropdown.open', count: 1)
-      find('.header-new-group-project a').trigger('click')
-    end
-  end
-
-  step 'I see "New Project" page' do
-    expect(page).to have_content('Project path')
-    expect(page).to have_content('Project name')
-  end
-
-  step 'I see "New Group" page' do
-    expect(page).to have_content('Group path')
-    expect(page).to have_content('Group name')
-  end
-
-  step 'I see "New Snippet" page' do
-    expect(page).to have_content('New Snippet')
-    expect(page).to have_content('Title')
-  end
-
-  step 'I see "New Issue" page' do
-    expect(page).to have_content('New Issue')
-    expect(page).to have_content('Title')
-  end
-
-  step 'I see "New Merge Request" page' do
-    expect(page).to have_content('New Merge Request')
-    expect(page).to have_content('Source branch')
-    expect(page).to have_content('Target branch')
-  end
-
-  def click_topmenuitem(item_name)
-    page.within '.header-content' do
-      find('.header-new-dropdown-toggle').trigger('click')
-      expect(page).to have_selector('.header-new.dropdown.open', count: 1)
-      click_link item_name
-    end
-  end
-end
diff --git a/spec/features/explore/new_menu_spec.rb b/spec/features/explore/new_menu_spec.rb
index eaf431f82b1687f4177b1f188fc9ccc9a3ad07c4..ae65f25d48b4d789c6634893ff09ab31148f5463 100644
--- a/spec/features/explore/new_menu_spec.rb
+++ b/spec/features/explore/new_menu_spec.rb
@@ -1,23 +1,22 @@
 require 'spec_helper'
 
 feature 'Top Plus Menu', feature: true, js: true do
-  let!(:user) { create :user }
-  let!(:group) { create(:group) }
-  let!(:public_group) { create(:group, :public) }
-  let!(:private_group) { create(:group, :private) }
-  let!(:empty_project) { create(:empty_project, group: public_group) }
+  let(:user) { create :user }
+  let(:guest_user) { create :user}
+  let(:group) { create(:group) }
+  let(:public_group) { create(:group, :public) }
+  let(:project) { create(:project, :repository, creator: user, namespace: user.namespace) }
 
   before do
     group.add_owner(user)
+    group.add_guest(guest_user)
 
-    login_as(user)
-
-    visit explore_groups_path
+    project.add_guest(guest_user)
   end
 
   context 'used by full user' do
     before do
-      login_as :user
+      login_as(user)
     end
 
     scenario 'click on New project shows new project page' do
@@ -48,7 +47,7 @@ feature 'Top Plus Menu', feature: true, js: true do
     end
 
     scenario 'click on New issue shows new issue page' do
-      visit namespace_project_path(empty_project.namespace, empty_project)
+      visit namespace_project_path(project.namespace, project)
 
       click_topmenuitem("New issue")
 
@@ -57,7 +56,7 @@ feature 'Top Plus Menu', feature: true, js: true do
     end
 
     scenario 'click on New merge request shows new merge request page' do
-      visit namespace_project_path(empty_project.namespace, empty_project)
+      visit namespace_project_path(project.namespace, project)
 
       click_topmenuitem("New merge request")
 
@@ -67,7 +66,7 @@ feature 'Top Plus Menu', feature: true, js: true do
     end
 
     scenario 'click on New project snippet shows new snippet page' do
-      visit namespace_project_path(empty_project.namespace, empty_project)
+      visit namespace_project_path(project.namespace, project)
 
       page.within '.header-content' do
         find('.header-new-dropdown-toggle').trigger('click')
@@ -102,6 +101,45 @@ feature 'Top Plus Menu', feature: true, js: true do
     end
   end
 
+  context 'used by guest user' do
+    before do
+      login_as(guest_user)
+    end
+
+    scenario 'click on New issue shows new issue page' do
+      visit namespace_project_path(project.namespace, project)
+
+      click_topmenuitem("New issue")
+
+      expect(page).to have_content('New Issue')
+      expect(page).to have_content('Title')
+    end
+
+    scenario 'has no New merge request menu item' do
+      visit namespace_project_path(project.namespace, project)
+
+      hasnot_topmenuitem("New merge request")
+    end
+
+    scenario 'has no New project snippet menu item' do
+      visit namespace_project_path(project.namespace, project)
+
+      expect(find('.header-new.dropdown')).not_to have_selector('.header-new-project-snippet')
+    end
+
+    scenario 'has no New subgroup menu item' do
+      visit group_path(group)
+
+      hasnot_topmenuitem("New subgroup")
+    end
+
+    scenario 'has no New project for group menu item' do
+      visit group_path(group)
+      
+      expect(find('.header-new.dropdown')).not_to have_selector('.header-new-group-project')
+    end
+  end
+
   def click_topmenuitem(item_name)
     page.within '.header-content' do
       find('.header-new-dropdown-toggle').trigger('click')
@@ -109,4 +147,9 @@ feature 'Top Plus Menu', feature: true, js: true do
       click_link item_name
     end
   end
+
+  def hasnot_topmenuitem(item_name)
+      expect(find('.header-new.dropdown')).not_to have_content(item_name)
+    end
+  end
 end