From 55d5ab360165b6e8ce6dae2a4333b3ff0a4daa2b Mon Sep 17 00:00:00 2001 From: Dasun Pubudumal <pubudumald@gmail.com> Date: Thu, 30 Jan 2025 15:30:23 +0000 Subject: [PATCH] Fix label printing error message --- app/models/print_job_wrapper.rb | 6 +++++- spec/models/print_job_wrapper_spec.rb | 6 ++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/app/models/print_job_wrapper.rb b/app/models/print_job_wrapper.rb index dc21de20..833e055d 100644 --- a/app/models/print_job_wrapper.rb +++ b/app/models/print_job_wrapper.rb @@ -42,7 +42,11 @@ def printer end def label_template - LabelTemplate.find_by(name: label_template_name) + lt = LabelTemplate.find_by(name: label_template_name) + if lt.nil? + errors.add(:label_template_name, 'does not exist') + end + lt end def copies=(copies) diff --git a/spec/models/print_job_wrapper_spec.rb b/spec/models/print_job_wrapper_spec.rb index fae7cc7d..fe4ce841 100644 --- a/spec/models/print_job_wrapper_spec.rb +++ b/spec/models/print_job_wrapper_spec.rb @@ -91,6 +91,12 @@ expect(print_job_wrapper).to be_valid expect(print_job_wrapper.print).to be_truthy end + + it 'raises a StandardError with a 422 status code if label_template validation fails' do + print_job_wrapper = PrintJobWrapper.new(attributes.except(:label_template_name)) + expect(print_job_wrapper).to_not be_valid + expect(print_job_wrapper.print).to be_falsy + end end end