Test the `in_progress_merge_commit_sha` flag
- A user has merge access to a protected branch, and not push access
- The user tries to merge an open merge request into the protected branch
in_progress_merge_commit_shaflag is set to the prospective merge commit's SHA
pre-receivehook before performing the merge
- The hook runs the branch permissions validations, and finds that the current merge matches an open merge request, using the
in_progress_merge_commit_sha, and passes
- Branch permission enforcement is tested in
- A merge commit is manually created with the
- The test directly calls (a portion of) the
in_progress_merge_commit_shaflag wasn't set for fast-forward merges (gitlab-org/gitlab-ee#900).
- Tests for
Repository#ff_mergeare being added in gitlab-org/gitlab-ee!671.
- We need a similar test for