Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTimothy Andrew <mail@timothyandrew.net>2016-07-29 09:13:07 +0300
committerTimothy Andrew <mail@timothyandrew.net>2016-07-29 12:50:39 +0300
commit0a8aeb46dc187cc309ddbe23d8624f5d24b6218c (patch)
treefc19d99c449d91ea56c65120f45d773dfdf77dcb /spec/features
parentc93a895abc434b9b78aa7cf4d285ce309cfd868a (diff)
Use `Gitlab::Access` to protected branch access levels.
1. It makes sense to reuse these constants since we had them duplicated in the previous enum implementation. This also simplifies our `check_access` implementation, because we can use `project.team.max_member_access` directly. 2. Use `accepts_nested_attributes_for` to create push/merge access levels. This was a bit fiddly to set up, but this simplifies our code by quite a large amount. We can even get rid of `ProtectedBranches::BaseService`. 3. Move API handling back into the API (previously in `ProtectedBranches::BaseService#translate_api_params`. 4. The protected branch services now return a `ProtectedBranch` rather than `true/false`. 5. Run `load_protected_branches` on-demand in the `create` action, to prevent it being called unneccessarily. 6. "Masters" is pre-selected as the default option for "Allowed to Push" and "Allowed to Merge". 7. These changes were based on a review from @rymai in !5081.
Diffstat (limited to 'spec/features')
-rw-r--r--spec/features/protected_branches_spec.rb12
1 files changed, 6 insertions, 6 deletions
diff --git a/spec/features/protected_branches_spec.rb b/spec/features/protected_branches_spec.rb
index dac2bcf9efd..57734b33a44 100644
--- a/spec/features/protected_branches_spec.rb
+++ b/spec/features/protected_branches_spec.rb
@@ -91,12 +91,12 @@ feature 'Projected Branches', feature: true, js: true do
set_protected_branch_name('master')
within('.new_protected_branch') do
find(".allowed-to-push").click
- click_on access_type_name
+ within(".dropdown.open .dropdown-menu") { click_on access_type_name }
end
click_on "Protect"
expect(ProtectedBranch.count).to eq(1)
- expect(ProtectedBranch.last.allowed_to_push).to eq(access_type_id)
+ expect(ProtectedBranch.last.push_access_level.access_level).to eq(access_type_id)
end
it "allows updating protected branches so that #{access_type_name} can push to them" do
@@ -112,7 +112,7 @@ feature 'Projected Branches', feature: true, js: true do
end
wait_for_ajax
- expect(ProtectedBranch.last.allowed_to_push).to eq(access_type_id)
+ expect(ProtectedBranch.last.push_access_level.access_level).to eq(access_type_id)
end
end
@@ -122,12 +122,12 @@ feature 'Projected Branches', feature: true, js: true do
set_protected_branch_name('master')
within('.new_protected_branch') do
find(".allowed-to-merge").click
- click_on access_type_name
+ within(".dropdown.open .dropdown-menu") { click_on access_type_name }
end
click_on "Protect"
expect(ProtectedBranch.count).to eq(1)
- expect(ProtectedBranch.last.allowed_to_merge).to eq(access_type_id)
+ expect(ProtectedBranch.last.merge_access_level.access_level).to eq(access_type_id)
end
it "allows updating protected branches so that #{access_type_name} can merge to them" do
@@ -143,7 +143,7 @@ feature 'Projected Branches', feature: true, js: true do
end
wait_for_ajax
- expect(ProtectedBranch.last.allowed_to_merge).to eq(access_type_id)
+ expect(ProtectedBranch.last.merge_access_level.access_level).to eq(access_type_id)
end
end
end