Loading lib/labkit/logging/field_validator.rb +1 −1 Original line number Diff line number Diff line Loading @@ -101,7 +101,7 @@ module Labkit warn baseline_generation_message(new_offenses) else warn report_new_offenses(new_offenses) raise "New LabKit logging offenses detected" raise SystemExit.new(2), "New LabKit logging offenses detected" end end Loading spec/labkit/logging/field_validator_spec.rb +8 −8 Original line number Diff line number Diff line Loading @@ -203,13 +203,13 @@ RSpec.describe Labkit::Logging::FieldValidator do File.write(config_path, { 'skip_ci_failure' => false, 'offenses' => [] }.to_yaml) end it 'raises an error for new offenses' do it 'exits with status 2 for new offenses' do offenses = registry.instance_variable_get(:@offenses) offenses << create_offense('app/models/user.rb', 10, 'meta.user_id', 'Labkit::Fields::GL_USER_ID', 'AppLogger') expect do suppress_output { described_class.process_violations } end.to raise_error(RuntimeError, /New LabKit logging offenses detected/) end.to raise_error(SystemExit) { |e| (expect(e.status).to eq(2)) && (expect(e.message).to match(/New LabKit logging offenses detected/)) } end end Loading @@ -218,36 +218,36 @@ RSpec.describe Labkit::Logging::FieldValidator do File.write(config_path, { 'offenses' => [] }.to_yaml) end it 'raises an error for new offenses' do it 'exits with status 2 for new offenses' do offenses = registry.instance_variable_get(:@offenses) offenses << create_offense('app/models/user.rb', 10, 'meta.user_id', 'Labkit::Fields::GL_USER_ID', 'AppLogger') expect do suppress_output { described_class.process_violations } end.to raise_error(RuntimeError, /New LabKit logging offenses detected/) end.to raise_error(SystemExit) { |e| (expect(e.status).to eq(2)) && (expect(e.message).to match(/New LabKit logging offenses detected/)) } end end end context 'with UPDATE not set' do it 'raises an error for new offenses' do it 'exits with status 2 for new offenses' do offenses = registry.instance_variable_get(:@offenses) offenses << create_offense('app/models/user.rb', 10, 'meta.user_id', 'Labkit::Fields::GL_USER_ID', 'AppLogger') expect do suppress_output { described_class.process_violations } end.to raise_error(RuntimeError, /New LabKit logging offenses detected/) end.to raise_error(SystemExit) { |e| (expect(e.status).to eq(2)) && (expect(e.message).to match(/New LabKit logging offenses detected/)) } expect(File.exist?(config_path)).to be(false) end it 'reports offense details before raising' do it 'reports offense details before exiting' do offenses = registry.instance_variable_get(:@offenses) offenses << create_offense('app/models/user.rb', 10, 'meta.user_id', 'Labkit::Fields::GL_USER_ID', 'AppLogger') expect do described_class.process_violations end.to raise_error(RuntimeError).and output(%r{app/models/user.rb:10.*meta\.user_id.*GL_USER_ID}m).to_stderr end.to raise_error(SystemExit).and output(%r{app/models/user.rb:10.*meta\.user_id.*GL_USER_ID}m).to_stderr end end Loading Loading
lib/labkit/logging/field_validator.rb +1 −1 Original line number Diff line number Diff line Loading @@ -101,7 +101,7 @@ module Labkit warn baseline_generation_message(new_offenses) else warn report_new_offenses(new_offenses) raise "New LabKit logging offenses detected" raise SystemExit.new(2), "New LabKit logging offenses detected" end end Loading
spec/labkit/logging/field_validator_spec.rb +8 −8 Original line number Diff line number Diff line Loading @@ -203,13 +203,13 @@ RSpec.describe Labkit::Logging::FieldValidator do File.write(config_path, { 'skip_ci_failure' => false, 'offenses' => [] }.to_yaml) end it 'raises an error for new offenses' do it 'exits with status 2 for new offenses' do offenses = registry.instance_variable_get(:@offenses) offenses << create_offense('app/models/user.rb', 10, 'meta.user_id', 'Labkit::Fields::GL_USER_ID', 'AppLogger') expect do suppress_output { described_class.process_violations } end.to raise_error(RuntimeError, /New LabKit logging offenses detected/) end.to raise_error(SystemExit) { |e| (expect(e.status).to eq(2)) && (expect(e.message).to match(/New LabKit logging offenses detected/)) } end end Loading @@ -218,36 +218,36 @@ RSpec.describe Labkit::Logging::FieldValidator do File.write(config_path, { 'offenses' => [] }.to_yaml) end it 'raises an error for new offenses' do it 'exits with status 2 for new offenses' do offenses = registry.instance_variable_get(:@offenses) offenses << create_offense('app/models/user.rb', 10, 'meta.user_id', 'Labkit::Fields::GL_USER_ID', 'AppLogger') expect do suppress_output { described_class.process_violations } end.to raise_error(RuntimeError, /New LabKit logging offenses detected/) end.to raise_error(SystemExit) { |e| (expect(e.status).to eq(2)) && (expect(e.message).to match(/New LabKit logging offenses detected/)) } end end end context 'with UPDATE not set' do it 'raises an error for new offenses' do it 'exits with status 2 for new offenses' do offenses = registry.instance_variable_get(:@offenses) offenses << create_offense('app/models/user.rb', 10, 'meta.user_id', 'Labkit::Fields::GL_USER_ID', 'AppLogger') expect do suppress_output { described_class.process_violations } end.to raise_error(RuntimeError, /New LabKit logging offenses detected/) end.to raise_error(SystemExit) { |e| (expect(e.status).to eq(2)) && (expect(e.message).to match(/New LabKit logging offenses detected/)) } expect(File.exist?(config_path)).to be(false) end it 'reports offense details before raising' do it 'reports offense details before exiting' do offenses = registry.instance_variable_get(:@offenses) offenses << create_offense('app/models/user.rb', 10, 'meta.user_id', 'Labkit::Fields::GL_USER_ID', 'AppLogger') expect do described_class.process_violations end.to raise_error(RuntimeError).and output(%r{app/models/user.rb:10.*meta\.user_id.*GL_USER_ID}m).to_stderr end.to raise_error(SystemExit).and output(%r{app/models/user.rb:10.*meta\.user_id.*GL_USER_ID}m).to_stderr end end Loading