diff --git a/enterprise/app/services/captain/llm/paginated_faq_generator_service.rb b/enterprise/app/services/captain/llm/paginated_faq_generator_service.rb index 149152107..93957a7f3 100644 --- a/enterprise/app/services/captain/llm/paginated_faq_generator_service.rb +++ b/enterprise/app/services/captain/llm/paginated_faq_generator_service.rb @@ -19,7 +19,7 @@ class Captain::Llm::PaginatedFaqGeneratorService < Llm::LegacyBaseOpenAiService end def generate - raise CustomExceptions::PdfFaqGenerationError, I18n.t('captain.documents.missing_openai_file_id') if @document&.openai_file_id.blank? + raise CustomExceptions::Pdf::FaqGenerationError, I18n.t('captain.documents.missing_openai_file_id') if @document&.openai_file_id.blank? generate_paginated_faqs end diff --git a/enterprise/app/services/captain/llm/pdf_processing_service.rb b/enterprise/app/services/captain/llm/pdf_processing_service.rb index 82e3e9fbc..ac35a2848 100644 --- a/enterprise/app/services/captain/llm/pdf_processing_service.rb +++ b/enterprise/app/services/captain/llm/pdf_processing_service.rb @@ -10,7 +10,7 @@ class Captain::Llm::PdfProcessingService < Llm::LegacyBaseOpenAiService return if document.openai_file_id.present? file_id = upload_pdf_to_openai - raise CustomExceptions::PdfUploadError, I18n.t('captain.documents.pdf_upload_failed') if file_id.blank? + raise CustomExceptions::Pdf::UploadError, I18n.t('captain.documents.pdf_upload_failed') if file_id.blank? document.store_openai_file_id(file_id) end diff --git a/lib/custom_exceptions/pdf.rb b/lib/custom_exceptions/pdf.rb new file mode 100644 index 000000000..e6dfa7c41 --- /dev/null +++ b/lib/custom_exceptions/pdf.rb @@ -0,0 +1,19 @@ +module CustomExceptions::Pdf + class UploadError < CustomExceptions::Base + def initialize(message = 'PDF upload failed') + super(message) + end + end + + class ValidationError < CustomExceptions::Base + def initialize(message = 'PDF validation failed') + super(message) + end + end + + class FaqGenerationError < CustomExceptions::Base + def initialize(message = 'PDF FAQ generation failed') + super(message) + end + end +end diff --git a/lib/custom_exceptions/pdf_processing_error.rb b/lib/custom_exceptions/pdf_processing_error.rb deleted file mode 100644 index 2c81f95d8..000000000 --- a/lib/custom_exceptions/pdf_processing_error.rb +++ /dev/null @@ -1,25 +0,0 @@ -module CustomExceptions - class PdfProcessingError < Base - def initialize(message = 'PDF processing failed') - super(message) - end - end - - class PdfUploadError < PdfProcessingError - def initialize(message = 'PDF upload failed') - super(message) - end - end - - class PdfValidationError < PdfProcessingError - def initialize(message = 'PDF validation failed') - super(message) - end - end - - class PdfFaqGenerationError < PdfProcessingError - def initialize(message = 'PDF FAQ generation failed') - super(message) - end - end -end diff --git a/spec/enterprise/services/captain/llm/paginated_faq_generator_service_spec.rb b/spec/enterprise/services/captain/llm/paginated_faq_generator_service_spec.rb index 5215a2d40..ca4518435 100644 --- a/spec/enterprise/services/captain/llm/paginated_faq_generator_service_spec.rb +++ b/spec/enterprise/services/captain/llm/paginated_faq_generator_service_spec.rb @@ -1,5 +1,4 @@ require 'rails_helper' -require 'custom_exceptions/pdf_processing_error' RSpec.describe Captain::Llm::PaginatedFaqGeneratorService do let(:document) { create(:captain_document) } @@ -23,7 +22,7 @@ RSpec.describe Captain::Llm::PaginatedFaqGeneratorService do end it 'raises an error' do - expect { service.generate }.to raise_error(CustomExceptions::PdfFaqGenerationError) + expect { service.generate }.to raise_error(CustomExceptions::Pdf::FaqGenerationError) end end diff --git a/spec/enterprise/services/captain/llm/pdf_processing_service_spec.rb b/spec/enterprise/services/captain/llm/pdf_processing_service_spec.rb index fd519dcdd..7e9ec9a40 100644 --- a/spec/enterprise/services/captain/llm/pdf_processing_service_spec.rb +++ b/spec/enterprise/services/captain/llm/pdf_processing_service_spec.rb @@ -1,5 +1,4 @@ require 'rails_helper' -require 'custom_exceptions/pdf_processing_error' RSpec.describe Captain::Llm::PdfProcessingService do let(:document) { create(:captain_document) } @@ -52,7 +51,7 @@ RSpec.describe Captain::Llm::PdfProcessingService do it 'raises error when upload fails' do allow(mock_client.files).to receive(:upload).and_return({ 'id' => nil }) - expect { service.process }.to raise_error(CustomExceptions::PdfUploadError) + expect { service.process }.to raise_error(CustomExceptions::Pdf::UploadError) end end end