From 8d0ad36bcfc0ef95ee9a116604ba1516367dbb27 Mon Sep 17 00:00:00 2001 From: Robert Speicher Date: Fri, 1 Dec 2017 11:33:02 -0600 Subject: [PATCH] Add a JsonSerializationError class instead of raising SecurityError --- app/models/concerns/blocks_json_serialization.rb | 6 ++++-- spec/models/concerns/blocks_json_serialization_spec.rb | 4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/app/models/concerns/blocks_json_serialization.rb b/app/models/concerns/blocks_json_serialization.rb index 75c6742260e..8019e6adc1c 100644 --- a/app/models/concerns/blocks_json_serialization.rb +++ b/app/models/concerns/blocks_json_serialization.rb @@ -5,8 +5,10 @@ module BlocksJsonSerialization extend ActiveSupport::Concern - def to_json(*args) - raise SecurityError, + JsonSerializationError = Class.new(StandardError) + + def to_json(*) + raise JsonSerializationError, "JSON serialization has been disabled on #{self.class.name}" end diff --git a/spec/models/concerns/blocks_json_serialization_spec.rb b/spec/models/concerns/blocks_json_serialization_spec.rb index 84f8ccc238e..571ed7d5b26 100644 --- a/spec/models/concerns/blocks_json_serialization_spec.rb +++ b/spec/models/concerns/blocks_json_serialization_spec.rb @@ -7,11 +7,11 @@ describe BlocksJsonSerialization do it 'blocks as_json' do expect { DummyModel.new.to_json } - .to raise_error(SecurityError, "JSON serialization has been disabled on DummyModel") + .to raise_error(described_class::JsonSerializationError, /DummyModel/) end it 'blocks to_json' do expect { DummyModel.new.to_json } - .to raise_error(SecurityError, "JSON serialization has been disabled on DummyModel") + .to raise_error(described_class::JsonSerializationError, /DummyModel/) end end