summaryrefslogtreecommitdiff
path: root/spec/features/projects/show_project_spec.rb
blob: 5aa0d8f00265baf09c987d77d66964a3ae9a5313 (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
require 'spec_helper'

describe 'Project show page', feature: true do
  context 'when project pending delete' do
    let(:project) { create(:project, :empty_repo, pending_delete: true) }
    let(:worker) { ProjectDestroyWorker.new }

    before do
      sign_in(project.owner)
    end

    it 'shows flash error if deletion for project fails' do
      error_message = "some error message"
      project.update_attributes(delete_error: error_message, pending_delete: false)

      visit namespace_project_path(project.namespace, project)

      expect(page).to have_selector('.project-deletion-failed-message')
      expect(page).to have_content("This project was scheduled for deletion, but failed with the following message: #{error_message}")
    end

    it 'renders 404 if project was successfully deleted' do
      worker.perform(project.id, project.owner.id, {})

      visit namespace_project_path(project.namespace, project)

      expect(page).to have_http_status(404)
    end
  end
end