summaryrefslogtreecommitdiff
path: root/spec/features/merge_request/user_rebases_merge_request_spec.rb
blob: 34f009000dc50d9aba8570282dd8a0c8afea0665 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# frozen_string_literal: true

require "spec_helper"

describe "User rebases a merge request", :js do
  let(:merge_request) { create(:merge_request, :simple, source_project: project) }
  let(:user) { project.owner }

  before do
    sign_in(user)
  end

  shared_examples "rebases" do
    it "rebases" do
      visit(merge_request_path(merge_request))

      expect(page).to have_button("Rebase")

      click_button("Rebase")

      expect(page).to have_content("Rebase in progress")
    end
  end

  context "when merge is regular" do
    let(:project) { create(:project, :public, :repository, merge_requests_rebase_enabled: true) }

    it_behaves_like "rebases"
  end

  context "when merge is ff-only" do
    let(:project) { create(:project, :public, :repository, merge_requests_ff_only_enabled: true) }

    it_behaves_like "rebases"
  end
end