From a26ee804d01912d49d982dfbde8e5fe1c198e04f Mon Sep 17 00:00:00 2001 From: Shinya Maeda Date: Fri, 30 Mar 2018 17:20:47 +0900 Subject: [PATCH] missing the public folder is InvaildStateError --- app/services/projects/update_pages_service.rb | 3 ++- spec/services/projects/update_pages_service_spec.rb | 13 ++++++++----- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/app/services/projects/update_pages_service.rb b/app/services/projects/update_pages_service.rb index 0a2ac7315ec..3172df28db6 100644 --- a/app/services/projects/update_pages_service.rb +++ b/app/services/projects/update_pages_service.rb @@ -31,7 +31,7 @@ module Projects # Check if we did extract public directory archive_public_path = File.join(archive_path, 'public') - raise FailedToExtractError, 'pages miss the public folder' unless Dir.exist?(archive_public_path) + raise InvaildStateError, 'pages miss the public folder' unless Dir.exist?(archive_public_path) raise InvaildStateError, 'pages are outdated' unless latest? deploy_page!(archive_public_path) @@ -41,6 +41,7 @@ module Projects error(e.message) rescue => e error(e.message, false) + raise e end private diff --git a/spec/services/projects/update_pages_service_spec.rb b/spec/services/projects/update_pages_service_spec.rb index 0c8c05168ce..dd31a677dfe 100644 --- a/spec/services/projects/update_pages_service_spec.rb +++ b/spec/services/projects/update_pages_service_spec.rb @@ -87,7 +87,8 @@ describe Projects::UpdatePagesService do it 'fails for empty file fails' do build.update_attributes(legacy_artifacts_file: empty_file) - expect(execute).not_to eq(:success) + expect { execute } + .to raise_error(Projects::UpdatePagesService::FailedToExtractError) end end end @@ -159,7 +160,8 @@ describe Projects::UpdatePagesService do it 'fails for empty file fails' do build.job_artifacts_archive.update_attributes(file: empty_file) - expect(execute).not_to eq(:success) + expect { execute } + .to raise_error(Projects::UpdatePagesService::FailedToExtractError) end context 'when timeout happens by DNS error' do @@ -169,7 +171,7 @@ describe Projects::UpdatePagesService do end it 'raises an error' do - execute + expect { execute }.to raise_error(SocketError) build.reload expect(deploy_status).to be_failed @@ -185,7 +187,8 @@ describe Projects::UpdatePagesService do end it 'raises an error' do - execute + expect { execute } + .to raise_error(Projects::UpdatePagesService::FailedToExtractError) build.reload expect(deploy_status).to be_failed @@ -198,7 +201,7 @@ describe Projects::UpdatePagesService do allow(build).to receive(:artifacts_metadata?).and_return(false) end - it 'raises an error' do + it 'does not raise an error and remove artifacts as failed job' do execute build.reload