summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJose Ivan Vargas <jvargas@gitlab.com>2018-02-05 12:18:04 -0600
committerJose Ivan Vargas <jvargas@gitlab.com>2018-02-05 12:19:26 -0600
commitac3b6ae2bf0fc8ef2634faef9589e08bb9406933 (patch)
tree4d11fa8ee3b01a1cd8eacb53ab0bea8ad4da35ad
parentc60f32d572f924837aa7b1bf9cdd0a1c157c4891 (diff)
downloadgitlab-ce-42603-refactor-the-delete-branch-and-delete-protected-branches-from-haml-to-vuejs.tar.gz
-rw-r--r--features/project/commits/branches.feature7
-rw-r--r--features/steps/project/commits/branches.rb15
-rw-r--r--spec/features/projects/branches_spec.rb16
-rw-r--r--spec/features/projects/environments/environment_spec.rb4
-rw-r--r--spec/features/protected_branches_spec.rb17
5 files changed, 27 insertions, 32 deletions
diff --git a/features/project/commits/branches.feature b/features/project/commits/branches.feature
index c57376aecff..8422c2119d5 100644
--- a/features/project/commits/branches.feature
+++ b/features/project/commits/branches.feature
@@ -21,13 +21,6 @@ Feature: Project Commits Branches
Then I should see new branch created
@javascript
- Scenario: I delete a branch
- Given I visit project branches page
- And I filter for branch improve/awesome
- And I click branch 'improve/awesome' delete link
- Then I should not see branch 'improve/awesome'
-
- @javascript
Scenario: I create a branch with invalid name
Given I visit project branches page
And I click new branch link
diff --git a/features/steps/project/commits/branches.rb b/features/steps/project/commits/branches.rb
index c3ae33d2aa9..6855084b182 100644
--- a/features/steps/project/commits/branches.rb
+++ b/features/steps/project/commits/branches.rb
@@ -64,21 +64,6 @@ class Spinach::Features::ProjectCommitsBranches < Spinach::FeatureSteps
expect(page).to have_content 'Branch already exists'
end
- step 'I filter for branch improve/awesome' do
- fill_in 'branch-search', with: 'improve/awesome'
- find('#branch-search').native.send_keys(:enter)
- end
-
- step "I click branch 'improve/awesome' delete link" do
- page.within '.js-branch-improve\/awesome' do
- accept_alert { find('.btn-remove').click }
- end
- end
-
- step "I should not see branch 'improve/awesome'" do
- expect(page).to have_css('.js-branch-improve\\/awesome', visible: :hidden)
- end
-
def select_branch(branch_name)
find('.git-revision-dropdown-toggle').click
diff --git a/spec/features/projects/branches_spec.rb b/spec/features/projects/branches_spec.rb
index 2fddd274078..375da8d4b3c 100644
--- a/spec/features/projects/branches_spec.rb
+++ b/spec/features/projects/branches_spec.rb
@@ -67,10 +67,11 @@ describe 'Branches' do
expect(page).to have_content('fix')
expect(find('.all-branches')).to have_selector('li', count: 1)
- accept_confirm { find('.js-branch-fix .btn-remove').click }
- expect(page).not_to have_content('fix')
- expect(find('.all-branches')).to have_selector('li', count: 0)
+ delete_branch
+ wait_for_requests
+
+ expect(all('li .ref-name', text: 'fix').count).to eq 0
end
end
end
@@ -110,4 +111,13 @@ describe 'Branches' do
Regexp.new(sorted_branches.join('.*'))
end
+
+ def delete_branch
+ find('#delete-branch-modal.modal', visible: false) # wait for Vue component to be loaded
+ find(".js-delete-branch").click
+
+ page.within '#delete-branch-modal' do
+ click_on 'Delete branch'
+ end
+ end
end
diff --git a/spec/features/projects/environments/environment_spec.rb b/spec/features/projects/environments/environment_spec.rb
index 64e600144e0..5903688b359 100644
--- a/spec/features/projects/environments/environment_spec.rb
+++ b/spec/features/projects/environments/environment_spec.rb
@@ -1,6 +1,6 @@
require 'spec_helper'
-feature 'Environment' do
+feature 'Environment', :js do
given(:project) { create(:project) }
given(:user) { create(:user) }
given(:role) { :developer }
@@ -237,7 +237,7 @@ feature 'Environment' do
visit project_branches_path(project, search: 'feature')
remove_branch_with_hooks(project, user, 'feature') do
- page.within('.js-branch-feature') { find('a.btn-remove').click }
+ page.within('.js-branch-feature') { find('button.btn-remove').click }
end
visit_environment(environment)
diff --git a/spec/features/protected_branches_spec.rb b/spec/features/protected_branches_spec.rb
index a4084818284..1ce341e4d8b 100644
--- a/spec/features/protected_branches_spec.rb
+++ b/spec/features/protected_branches_spec.rb
@@ -48,11 +48,8 @@ feature 'Protected Branches', :js do
expect(page).to have_content('fix')
expect(find('.all-branches')).to have_selector('li', count: 1)
- page.find('[data-target="#modal-delete-branch"]').click
-
- expect(page).to have_css('.js-delete-branch[disabled]')
- fill_in 'delete_branch_input', with: 'fix'
- click_link 'Delete protected branch'
+ delete_protected_branch
+ wait_for_requests
fill_in 'branch-search', with: 'fix'
find('#branch-search').native.send_keys(:enter)
@@ -175,4 +172,14 @@ feature 'Protected Branches', :js do
find(".dropdown-input-field").set(branch_name)
click_on("Create wildcard #{branch_name}")
end
+
+ def delete_protected_branch
+ find('#delete-branch-modal.modal', visible: false) # wait for Vue component to be loaded
+ find(".js-delete-branch").click
+
+ page.within '#delete-branch-modal' do
+ fill_in 'delete-branch-modal-input', with: 'fix'
+ click_on 'Delete protected branch'
+ end
+ end
end