From 0b9f83e24ed18cfb4c87b115005f464f9a93363b Mon Sep 17 00:00:00 2001 From: Taichi Ishitani Date: Wed, 22 Jan 2025 13:33:40 +0900 Subject: [PATCH] merge ConfigurationError and RegisterMapError (refs: rggen/rggen#237) --- lib/rggen/core.rb | 2 - lib/rggen/core/configuration/error.rb | 20 ---------- lib/rggen/core/configuration/feature.rb | 2 - .../core/configuration/feature_factory.rb | 1 - lib/rggen/core/configuration/input_data.rb | 2 - lib/rggen/core/configuration/loader.rb | 1 - lib/rggen/core/exceptions.rb | 6 +-- .../core/input_base/component_factory.rb | 2 + lib/rggen/core/input_base/error.rb | 2 +- lib/rggen/core/input_base/feature.rb | 1 + lib/rggen/core/input_base/feature_factory.rb | 3 +- lib/rggen/core/input_base/input_data.rb | 2 + .../core/input_base/input_vaue_parser.rb | 14 +------ lib/rggen/core/input_base/loader.rb | 2 + .../core/input_base/option_hash_parser.rb | 2 +- .../core/register_map/component_factory.rb | 2 - lib/rggen/core/register_map/error.rb | 20 ---------- lib/rggen/core/register_map/feature.rb | 1 - .../core/register_map/feature_factory.rb | 1 - lib/rggen/core/register_map/input_data.rb | 2 - .../core/configuration/input_data_spec.rb | 14 +++---- .../core/configuration/raise_error_spec.rb | 20 ---------- .../input_base/conversion_utility_spec.rb | 16 ++------ .../core/input_base/feature_factory_spec.rb | 11 +----- .../core/input_base/hash_list_parser_spec.rb | 10 ++--- .../input_base/option_array_parser_spec.rb | 2 +- .../input_base/option_hash_parser_spec.rb | 22 +++++------ .../rggen/core/input_base/raise_error_spec.rb | 8 +--- .../register_map/component_factory_spec.rb | 18 ++++----- .../core/register_map/input_data_spec.rb | 38 +++++++++---------- .../core/register_map/raise_error_spec.rb | 20 ---------- 31 files changed, 65 insertions(+), 202 deletions(-) delete mode 100644 lib/rggen/core/configuration/error.rb delete mode 100644 lib/rggen/core/register_map/error.rb delete mode 100644 spec/rggen/core/configuration/raise_error_spec.rb delete mode 100644 spec/rggen/core/register_map/raise_error_spec.rb diff --git a/lib/rggen/core.rb b/lib/rggen/core.rb index 6ce3c76..a4896ef 100644 --- a/lib/rggen/core.rb +++ b/lib/rggen/core.rb @@ -61,7 +61,6 @@ require_relative 'core/input_base/hash_list_parser' require_relative 'core/input_base/feature_factory' -require_relative 'core/configuration/error' require_relative 'core/configuration/input_data' require_relative 'core/configuration/component' require_relative 'core/configuration/component_factory' @@ -75,7 +74,6 @@ require_relative 'core/configuration/yaml_loader' require_relative 'core/configuration' -require_relative 'core/register_map/error' require_relative 'core/register_map/input_data' require_relative 'core/register_map/component' require_relative 'core/register_map/component_factory' diff --git a/lib/rggen/core/configuration/error.rb b/lib/rggen/core/configuration/error.rb deleted file mode 100644 index 3b54aef..0000000 --- a/lib/rggen/core/configuration/error.rb +++ /dev/null @@ -1,20 +0,0 @@ -# frozen_string_literal: true - -module RgGen - module Core - module Configuration - class ConfigurationError < Core::RuntimeError - end - - module RaiseError - include InputBase::RaiseError - - private - - def error_exception - ConfigurationError - end - end - end - end -end diff --git a/lib/rggen/core/configuration/feature.rb b/lib/rggen/core/configuration/feature.rb index f6ae869..c90a69e 100644 --- a/lib/rggen/core/configuration/feature.rb +++ b/lib/rggen/core/configuration/feature.rb @@ -4,8 +4,6 @@ module RgGen module Core module Configuration class Feature < InputBase::Feature - include RaiseError - alias_method :configuration, :component end end diff --git a/lib/rggen/core/configuration/feature_factory.rb b/lib/rggen/core/configuration/feature_factory.rb index 81fa3e1..449fee5 100644 --- a/lib/rggen/core/configuration/feature_factory.rb +++ b/lib/rggen/core/configuration/feature_factory.rb @@ -4,7 +4,6 @@ module RgGen module Core module Configuration class FeatureFactory < InputBase::FeatureFactory - include RaiseError end end end diff --git a/lib/rggen/core/configuration/input_data.rb b/lib/rggen/core/configuration/input_data.rb index c424f69..e9ca06e 100644 --- a/lib/rggen/core/configuration/input_data.rb +++ b/lib/rggen/core/configuration/input_data.rb @@ -4,8 +4,6 @@ module RgGen module Core module Configuration class InputData < InputBase::InputData - include RaiseError - def initialize(valid_value_lists, &) super(nil, valid_value_lists, &) end diff --git a/lib/rggen/core/configuration/loader.rb b/lib/rggen/core/configuration/loader.rb index 37fe66b..99e1ca2 100644 --- a/lib/rggen/core/configuration/loader.rb +++ b/lib/rggen/core/configuration/loader.rb @@ -4,7 +4,6 @@ module RgGen module Core module Configuration class Loader < InputBase::Loader - include RaiseError end end end diff --git a/lib/rggen/core/exceptions.rb b/lib/rggen/core/exceptions.rb index b393089..07cc059 100644 --- a/lib/rggen/core/exceptions.rb +++ b/lib/rggen/core/exceptions.rb @@ -25,13 +25,13 @@ class BuilderError < RgGenError class PluginError < RgGenError end - class RuntimeError < RgGenError + class LoadError < RgGenError end - class LoadError < Core::RuntimeError + class SourceError < RgGenError end - class GeneratorError < Core::RuntimeError + class GeneratorError < RgGenError end end end diff --git a/lib/rggen/core/input_base/component_factory.rb b/lib/rggen/core/input_base/component_factory.rb index 21b3b7e..8d26f9d 100644 --- a/lib/rggen/core/input_base/component_factory.rb +++ b/lib/rggen/core/input_base/component_factory.rb @@ -4,6 +4,8 @@ module RgGen module Core module InputBase class ComponentFactory < Base::ComponentFactory + include RaiseError + class << self def enable_no_children_error @enable_no_children_error = true diff --git a/lib/rggen/core/input_base/error.rb b/lib/rggen/core/input_base/error.rb index 4ccd37a..dec5eb4 100644 --- a/lib/rggen/core/input_base/error.rb +++ b/lib/rggen/core/input_base/error.rb @@ -18,7 +18,7 @@ module RaiseError def error(message, position = nil) pos = extract_error_position(position) - raise error_exception.new(message, pos) + raise SourceError.new(message, pos) end def extract_error_position(position) diff --git a/lib/rggen/core/input_base/feature.rb b/lib/rggen/core/input_base/feature.rb index 9034916..e4cdc4c 100644 --- a/lib/rggen/core/input_base/feature.rb +++ b/lib/rggen/core/input_base/feature.rb @@ -6,6 +6,7 @@ module InputBase class Feature < Base::Feature include Utility::RegexpPatterns include Utility::TypeChecker + include RaiseError include ConversionUtility class << self diff --git a/lib/rggen/core/input_base/feature_factory.rb b/lib/rggen/core/input_base/feature_factory.rb index 437463f..c34bf64 100644 --- a/lib/rggen/core/input_base/feature_factory.rb +++ b/lib/rggen/core/input_base/feature_factory.rb @@ -5,6 +5,7 @@ module Core module InputBase class FeatureFactory < Base::FeatureFactory include Utility::TypeChecker + include RaiseError class << self def convert_value(&block) @@ -66,7 +67,7 @@ def process_active_input_value(input_value) def parse_input_value(input_value, value_format) format, options = value_format - VALUE_PARSERS[format].new(error_exception, **options).parse(input_value) + VALUE_PARSERS[format].new(**options).parse(input_value) end def override_input_value(input_value, parsed_value, options) diff --git a/lib/rggen/core/input_base/input_data.rb b/lib/rggen/core/input_base/input_data.rb index a6e1323..394f588 100644 --- a/lib/rggen/core/input_base/input_data.rb +++ b/lib/rggen/core/input_base/input_data.rb @@ -4,6 +4,8 @@ module RgGen module Core module InputBase class InputData + include RaiseError + def initialize(layer, valid_value_lists, *_args) @layer = layer @valid_value_lists = valid_value_lists diff --git a/lib/rggen/core/input_base/input_vaue_parser.rb b/lib/rggen/core/input_base/input_vaue_parser.rb index 60edb2d..fea13a7 100644 --- a/lib/rggen/core/input_base/input_vaue_parser.rb +++ b/lib/rggen/core/input_base/input_vaue_parser.rb @@ -5,9 +5,9 @@ module Core module InputBase class InputValueParser include Utility::TypeChecker + include RaiseError - def initialize(exception, **_option) - @exception = exception + def initialize(**_options) end private @@ -15,16 +15,6 @@ def initialize(exception, **_option) def split_string(string, separator, limit) string&.split(separator, limit)&.map(&:strip) end - - def error(message, position_or_input_value = nil) - position = - if position_or_input_value.respond_to?(:position) - position_or_input_value.position - else - position_or_input_value - end - raise @exception.new(message, position) - end end end end diff --git a/lib/rggen/core/input_base/loader.rb b/lib/rggen/core/input_base/loader.rb index 4640762..b242fa5 100644 --- a/lib/rggen/core/input_base/loader.rb +++ b/lib/rggen/core/input_base/loader.rb @@ -4,6 +4,8 @@ module RgGen module Core module InputBase class Loader + include RaiseError + def self.support_types(types = nil) types && (@support_types ||= []).concat(types.map(&:to_sym)) @support_types diff --git a/lib/rggen/core/input_base/option_hash_parser.rb b/lib/rggen/core/input_base/option_hash_parser.rb index e8ab406..4d9d2fc 100644 --- a/lib/rggen/core/input_base/option_hash_parser.rb +++ b/lib/rggen/core/input_base/option_hash_parser.rb @@ -4,7 +4,7 @@ module RgGen module Core module InputBase class OptionHashParser < InputValueParser - def initialize(exception, allowed_options: nil, multiple_values: false) + def initialize(allowed_options: nil, multiple_values: false) super @allowed_options = allowed_options @multiple_values = multiple_values diff --git a/lib/rggen/core/register_map/component_factory.rb b/lib/rggen/core/register_map/component_factory.rb index 780a5eb..46c1aa6 100644 --- a/lib/rggen/core/register_map/component_factory.rb +++ b/lib/rggen/core/register_map/component_factory.rb @@ -4,8 +4,6 @@ module RgGen module Core module RegisterMap class ComponentFactory < InputBase::ComponentFactory - include RaiseError - private def select_actual_sources(configuration, *_) diff --git a/lib/rggen/core/register_map/error.rb b/lib/rggen/core/register_map/error.rb deleted file mode 100644 index d82f15a..0000000 --- a/lib/rggen/core/register_map/error.rb +++ /dev/null @@ -1,20 +0,0 @@ -# frozen_string_literal: true - -module RgGen - module Core - module RegisterMap - class RegisterMapError < Core::RuntimeError - end - - module RaiseError - include InputBase::RaiseError - - private - - def error_exception - RegisterMapError - end - end - end - end -end diff --git a/lib/rggen/core/register_map/feature.rb b/lib/rggen/core/register_map/feature.rb index 56581b8..22e9edd 100644 --- a/lib/rggen/core/register_map/feature.rb +++ b/lib/rggen/core/register_map/feature.rb @@ -5,7 +5,6 @@ module Core module RegisterMap class Feature < InputBase::Feature include Base::FeatureLayerExtension - include RaiseError private diff --git a/lib/rggen/core/register_map/feature_factory.rb b/lib/rggen/core/register_map/feature_factory.rb index 8edfa85..4bc886c 100644 --- a/lib/rggen/core/register_map/feature_factory.rb +++ b/lib/rggen/core/register_map/feature_factory.rb @@ -4,7 +4,6 @@ module RgGen module Core module RegisterMap class FeatureFactory < InputBase::FeatureFactory - include RaiseError end end end diff --git a/lib/rggen/core/register_map/input_data.rb b/lib/rggen/core/register_map/input_data.rb index a3c86df..4e8c6f1 100644 --- a/lib/rggen/core/register_map/input_data.rb +++ b/lib/rggen/core/register_map/input_data.rb @@ -4,8 +4,6 @@ module RgGen module Core module RegisterMap class InputData < InputBase::InputData - include RaiseError - module Root def register_block(value_list = nil, &) child(:register_block, value_list, &) diff --git a/spec/rggen/core/configuration/input_data_spec.rb b/spec/rggen/core/configuration/input_data_spec.rb index 81d0afb..699711b 100644 --- a/spec/rggen/core/configuration/input_data_spec.rb +++ b/spec/rggen/core/configuration/input_data_spec.rb @@ -18,22 +18,18 @@ def input_value(value) RgGen::Core::InputBase::InputValue.new(value, position) end - def raise_configuration_error(message) - raise_error RgGen::Core::Configuration::ConfigurationError, message - end - context '入力値名が入力値リスト上にない場合' do - it 'ConfigurationErrorを起こす' do + it 'SourceErrorを起こす' do expect { input_data.value(:baz, input_value(0)) } - .to raise_configuration_error 'unknown configuration field is given: baz' + .to raise_source_error 'unknown configuration field is given: baz' expect { input_data.value('baz', input_value(0)) } - .to raise_configuration_error 'unknown configuration field is given: baz' + .to raise_source_error 'unknown configuration field is given: baz' expect { input_data[:baz] = input_value(0) } - .to raise_configuration_error 'unknown configuration field is given: baz' + .to raise_source_error 'unknown configuration field is given: baz' expect { input_data['baz'] = input_value(0) } - .to raise_configuration_error 'unknown configuration field is given: baz' + .to raise_source_error 'unknown configuration field is given: baz' expect { input_data.value(:foo, input_value(0)) } .not_to raise_error diff --git a/spec/rggen/core/configuration/raise_error_spec.rb b/spec/rggen/core/configuration/raise_error_spec.rb deleted file mode 100644 index 38eb92d..0000000 --- a/spec/rggen/core/configuration/raise_error_spec.rb +++ /dev/null @@ -1,20 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe RgGen::Core::Configuration::RaiseError do - let(:configuration_error) do - RgGen::Core::Configuration::ConfigurationError - end - - let(:object) do - klass = Class.new do - include RgGen::Core::Configuration::RaiseError - end - klass.new - end - - describe '#error_exception' do - it 'ConfigurationErrorを返す' do - expect(object.send(:error_exception)).to equal configuration_error - end - end -end diff --git a/spec/rggen/core/input_base/conversion_utility_spec.rb b/spec/rggen/core/input_base/conversion_utility_spec.rb index 09129df..ee275e3 100644 --- a/spec/rggen/core/input_base/conversion_utility_spec.rb +++ b/spec/rggen/core/input_base/conversion_utility_spec.rb @@ -5,22 +5,12 @@ Struct.new(:x, :y).new(1, 2) end - let(:exception) do - RgGen::Core::RuntimeError - end - let(:object) do klass = Class.new do include RgGen::Core::InputBase::RaiseError include RgGen::Core::InputBase::ConversionUtility - - def initialize(error_exception) - @error_exception = error_exception - end - - attr_reader :error_exception end - klass.new(exception) + klass.new end def input_value(value) @@ -67,11 +57,11 @@ def to_int(*argv, &b) [nil, true, false, '', 'foo', '0x1gh', :foo, Object.new].each do |value| expect { to_int(value, position, &block) - }.to raise_error exception, "cannot convert #{value.inspect} into integer -- #{position}" + }.to raise_source_error "cannot convert #{value.inspect} into integer", position expect { to_int(input_value(value), &block) - }.to raise_error exception, "cannot convert #{value.inspect} into integer -- #{position}" + }.to raise_source_error "cannot convert #{value.inspect} into integer", position end end end diff --git a/spec/rggen/core/input_base/feature_factory_spec.rb b/spec/rggen/core/input_base/feature_factory_spec.rb index dc5a824..83daf42 100644 --- a/spec/rggen/core/input_base/feature_factory_spec.rb +++ b/spec/rggen/core/input_base/feature_factory_spec.rb @@ -13,15 +13,8 @@ Class.new(RgGen::Core::InputBase::Feature) end - let(:exception) do - Class.new(RgGen::Core::RgGenError) - end - let(:feature_factory) do - e = exception - Class.new(described_class) do - define_method(:error_exception) { e } - end + Class.new(described_class) end describe '#create' do @@ -354,7 +347,7 @@ def factory(**options) expect { factory(allowed_options: allowed_options).create(component, create_input_value([0, baz: 1, qux: 2])) - }.to raise_error exception + }.to raise_source_error end end diff --git a/spec/rggen/core/input_base/hash_list_parser_spec.rb b/spec/rggen/core/input_base/hash_list_parser_spec.rb index 0297108..eb351db 100644 --- a/spec/rggen/core/input_base/hash_list_parser_spec.rb +++ b/spec/rggen/core/input_base/hash_list_parser_spec.rb @@ -2,11 +2,7 @@ RSpec.describe RgGen::Core::InputBase::HashListParser do let(:parser) do - described_class.new(exception) - end - - let(:exception) do - RgGen::Core::RuntimeError + described_class.new end let(:position) do @@ -83,11 +79,11 @@ def match_result(value) ['foo', 'foo 1', 'foo: 1, bar', 1, true, false, Object.new].each do |value| expect { parse(value) - }.to raise_error exception, "cannot convert #{value.inspect} into hash -- #{position}" + }.to raise_source_error "cannot convert #{value.inspect} into hash", position expect { parse([value]) - }.to raise_error exception, "cannot convert #{value.inspect} into hash -- #{position}" + }.to raise_source_error "cannot convert #{value.inspect} into hash", position end end end diff --git a/spec/rggen/core/input_base/option_array_parser_spec.rb b/spec/rggen/core/input_base/option_array_parser_spec.rb index a010c75..9e6a3ca 100644 --- a/spec/rggen/core/input_base/option_array_parser_spec.rb +++ b/spec/rggen/core/input_base/option_array_parser_spec.rb @@ -2,7 +2,7 @@ RSpec.describe RgGen::Core::InputBase::OptionArrayParser do let(:parser) do - described_class.new(RgGen::Core::RuntimeError) + described_class.new end let(:position) do diff --git a/spec/rggen/core/input_base/option_hash_parser_spec.rb b/spec/rggen/core/input_base/option_hash_parser_spec.rb index f17e67a..bf142bf 100644 --- a/spec/rggen/core/input_base/option_hash_parser_spec.rb +++ b/spec/rggen/core/input_base/option_hash_parser_spec.rb @@ -1,17 +1,13 @@ # frozen_string_literal: true RSpec.describe RgGen::Core::InputBase::OptionHashParser do - let(:exception) do - RgGen::Core::RuntimeError - end - let(:position) do Struct.new(:x, :y).new(1, 2) end def parser(allowed_options: [:foo, :bar, :baz], multiple_values: false) described_class - .new(exception, allowed_options: allowed_options, multiple_values: multiple_values) + .new(allowed_options: allowed_options, multiple_values: multiple_values) end def create_input_value(value) @@ -125,12 +121,12 @@ def match_result(value, options) input_value = create_input_value(values.join(',')) expect { parser.parse(input_value) - }.to raise_error exception, "multiple input values are given: #{values} -- #{position}" + }.to raise_source_error "multiple input values are given: #{values}", position input_value = create_input_value("#{values.join(',')}: foo: 2, bar: 3") expect { parser.parse(input_value) - }.to raise_error exception, "multiple input values are given: #{values} -- #{position}" + }.to raise_source_error "multiple input values are given: #{values}", position end end end @@ -141,14 +137,14 @@ def match_result(value, options) input_value = create_input_value([0, { foo: 1 }, value, { bar: 2 }]) expect { parser.parse(input_value) - }.to raise_error exception, "invalid option is given: #{value.inspect} -- #{position}" + }.to raise_source_error "invalid option is given: #{value.inspect}", position end options = 'foo: 1, bar' input_value = create_input_value("0: #{options}") expect { parser.parse(input_value) - }.to raise_error exception, "invalid options are given: #{options.inspect} -- #{position}" + }.to raise_source_error "invalid options are given: #{options.inspect}", position end end @@ -158,19 +154,19 @@ def match_result(value, options) input_value = create_input_value(options) expect { parser.parse(input_value) - }.to raise_error exception, "no input values are given: #{options.inspect} -- #{position}" + }.to raise_source_error "no input values are given: #{options.inspect}", position options = [{ foo: 0, bar: 1 }] input_value = create_input_value(options) expect { parser.parse(input_value) - }.to raise_error exception, "no input values are given: #{options.inspect} -- #{position}" + }.to raise_source_error "no input values are given: #{options.inspect}", position options = ':foo: 0, bar: 1' input_value = create_input_value(options) expect { parser.parse(input_value) - }.to raise_error exception, "no input values are given: #{options.inspect} -- #{position}" + }.to raise_source_error "no input values are given: #{options.inspect}", position end end @@ -179,7 +175,7 @@ def match_result(value, options) input_value = create_input_value([0, foo: 1, fizz: 2, bar: 3, buzz: 4]) expect { parser.parse(input_value) - }.to raise_error exception, "unknown options are given: #{[:fizz, :buzz]} -- #{position}" + }.to raise_source_error "unknown options are given: #{[:fizz, :buzz]}", position end end diff --git a/spec/rggen/core/input_base/raise_error_spec.rb b/spec/rggen/core/input_base/raise_error_spec.rb index da0fff9..1d2e9bf 100644 --- a/spec/rggen/core/input_base/raise_error_spec.rb +++ b/spec/rggen/core/input_base/raise_error_spec.rb @@ -10,17 +10,13 @@ end let(:exception) do - RgGen::Core::RuntimeError + RgGen::Core::SourceError end let(:object) do klass = Class.new do include RgGen::Core::InputBase::RaiseError - def initialize(exception) - @error_exception = exception - end - attr_reader :error_exception attr_writer :position @@ -28,7 +24,7 @@ def error_test(*argv) error *argv end end - klass.new(exception) + klass.new end def input_value(position) diff --git a/spec/rggen/core/register_map/component_factory_spec.rb b/spec/rggen/core/register_map/component_factory_spec.rb index 482d389..116219c 100644 --- a/spec/rggen/core/register_map/component_factory_spec.rb +++ b/spec/rggen/core/register_map/component_factory_spec.rb @@ -133,10 +133,6 @@ def setup_read_data(data) allow(File).to receive(:binread).with(file).and_return(json) end - def raise_register_map_error(message = nil, position = nil) - raise_rggen_error(RgGen::Core::RegisterMap::RegisterMapError, message, position) - end - describe '#create' do let(:file) { 'foo.json' } @@ -314,18 +310,18 @@ def raise_register_map_error(message = nil, position = nil) describe '子コンポーネントの有無の確認' do context '子コンポーネントの指定がない場合' do - it 'RegisterMapErrorを起こす' do + it 'SoruceErrorを起こす' do setup_read_data({}) expect { root_component_factory.create(configuration, [file]) - }.to raise_register_map_error 'no register blocks are given' + }.to raise_source_error 'no register blocks are given' setup_read_data({ register_blocks: [{}] }) expect { root_component_factory.create(configuration, [file]) - }.to raise_register_map_error 'neither register files nor registers are given' + }.to raise_source_error 'neither register files nor registers are given' setup_read_data({ register_blocks: [ @@ -334,7 +330,7 @@ def raise_register_map_error(message = nil, position = nil) }) expect { root_component_factory.create(configuration, [file]) - }.to raise_register_map_error 'neither register files nor registers are given' + }.to raise_source_error 'neither register files nor registers are given' setup_read_data({ register_blocks: [ @@ -343,12 +339,12 @@ def raise_register_map_error(message = nil, position = nil) }) expect { root_component_factory.create(configuration, [file]) - }.to raise_register_map_error 'no bit fields are given' + }.to raise_source_error 'no bit fields are given' end end context '#need_no_childrenが指定された場合' do - it 'RegisterMapErrorは起こさない' do + it 'SoruceErrorは起こさない' do setup_read_data({ register_blocks: [ { baz: true }] }) @@ -379,7 +375,7 @@ def raise_register_map_error(message = nil, position = nil) context 'ComponentFacotry.disable_no_children_errorが指定された場合' do after { described_class.enable_no_children_error } - it 'RegisterMapErrorは起こさない' do + it 'SoruceErrorは起こさない' do described_class.disable_no_children_error setup_read_data({}) diff --git a/spec/rggen/core/register_map/input_data_spec.rb b/spec/rggen/core/register_map/input_data_spec.rb index c1bd7bc..f82c3c6 100644 --- a/spec/rggen/core/register_map/input_data_spec.rb +++ b/spec/rggen/core/register_map/input_data_spec.rb @@ -22,22 +22,18 @@ def input_value(value) RgGen::Core::InputBase::InputValue.new(value, position) end - def raise_register_map_error(message) - raise_error RgGen::Core::RegisterMap::RegisterMapError, message - end - describe '#value/#[]=' do context '入力値名が入力値リスト上にない場合' do - it 'RegisterMapErrorを起こす' do + it 'SoruceErrorを起こす' do input_data = create_input_data(:register_block) expect { input_data.value(:bar, input_value(0)) } - .to raise_register_map_error 'unknown register map field is given: bar' + .to raise_source_error 'unknown register map field is given: bar' expect { input_data.value('bar', input_value(0)) } - .to raise_register_map_error 'unknown register map field is given: bar' + .to raise_source_error 'unknown register map field is given: bar' expect { input_data[:bar] = input_value(0) } - .to raise_register_map_error 'unknown register map field is given: bar' + .to raise_source_error 'unknown register map field is given: bar' expect { input_data['bar'] = input_value(0) } - .to raise_register_map_error 'unknown register map field is given: bar' + .to raise_source_error 'unknown register map field is given: bar' expect { input_data.value(:foo, input_value(0)) } .not_to raise_error expect { input_data[:foo] = input_value(0) } @@ -45,13 +41,13 @@ def raise_register_map_error(message) input_data = create_input_data(:register_file) expect { input_data.value(:foo, input_value(0)) } - .to raise_register_map_error 'unknown register map field is given: foo' + .to raise_source_error 'unknown register map field is given: foo' expect { input_data.value('foo', input_value(0)) } - .to raise_register_map_error 'unknown register map field is given: foo' + .to raise_source_error 'unknown register map field is given: foo' expect { input_data[:foo] = input_value(0) } - .to raise_register_map_error 'unknown register map field is given: foo' + .to raise_source_error 'unknown register map field is given: foo' expect { input_data['foo'] = input_value(0) } - .to raise_register_map_error 'unknown register map field is given: foo' + .to raise_source_error 'unknown register map field is given: foo' expect { input_data.value(:bar, input_value(0)) } .not_to raise_error expect { input_data[:bar] = input_value(0) } @@ -59,13 +55,13 @@ def raise_register_map_error(message) input_data = create_input_data(:register) expect { input_data.value(:qux, input_value(0)) } - .to raise_register_map_error 'unknown register map field is given: qux' + .to raise_source_error 'unknown register map field is given: qux' expect { input_data.value('qux', input_value(0)) } - .to raise_register_map_error 'unknown register map field is given: qux' + .to raise_source_error 'unknown register map field is given: qux' expect { input_data[:qux] = input_value(0) } - .to raise_register_map_error 'unknown register map field is given: qux' + .to raise_source_error 'unknown register map field is given: qux' expect { input_data['qux'] = input_value(0) } - .to raise_register_map_error 'unknown register map field is given: qux' + .to raise_source_error 'unknown register map field is given: qux' expect { input_data.value(:baz, input_value(0)) } .not_to raise_error expect { input_data[:baz] = input_value(0) } @@ -73,13 +69,13 @@ def raise_register_map_error(message) input_data = create_input_data(:bit_field) expect { input_data.value(:baz, input_value(0)) } - .to raise_register_map_error 'unknown register map field is given: baz' + .to raise_source_error 'unknown register map field is given: baz' expect { input_data.value('baz', input_value(0)) } - .to raise_register_map_error 'unknown register map field is given: baz' + .to raise_source_error 'unknown register map field is given: baz' expect { input_data[:baz] = input_value(0) } - .to raise_register_map_error 'unknown register map field is given: baz' + .to raise_source_error 'unknown register map field is given: baz' expect { input_data['baz'] = input_value(0) } - .to raise_register_map_error 'unknown register map field is given: baz' + .to raise_source_error 'unknown register map field is given: baz' expect { input_data.value(:qux, input_value(0)) } .not_to raise_error expect { input_data[:qux] = input_value(0) } diff --git a/spec/rggen/core/register_map/raise_error_spec.rb b/spec/rggen/core/register_map/raise_error_spec.rb deleted file mode 100644 index a663db7..0000000 --- a/spec/rggen/core/register_map/raise_error_spec.rb +++ /dev/null @@ -1,20 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe RgGen::Core::RegisterMap::RaiseError do - let(:register_map_error) do - RgGen::Core::RegisterMap::RegisterMapError - end - - let(:object) do - klass = Class.new do - include RgGen::Core::RegisterMap::RaiseError - end - klass.new - end - - describe '#error_exception' do - it 'RegisterMapErrorを返す' do - expect(object.send(:error_exception)).to equal register_map_error - end - end -end