lib/frameit/config_parser.rb in frameit-2.6.2 vs lib/frameit/config_parser.rb in frameit-2.7.0

- old
+ new

@@ -1,10 +1,10 @@ module Frameit class ConfigParser def load(path) return nil unless File.exist?(path) # we are okay with no config at all - UI.message "Parsing config file '#{path}'" if $verbose + UI.verbose("Parsing config file '#{path}'") @path = path self.parse(File.read(path)) end # @param data (String) the JSON data to be parsed @@ -57,36 +57,38 @@ end # Make sure the paths/colors are valid def validate_values(values) values.each do |key, value| - if value.kind_of? Hash + if value.kind_of?(Hash) validate_values(value) # recursive call else if key == 'font' - UI.user_error! "Could not find font at path '#{File.expand_path(value)}'" unless File.exist? value + UI.user_error!("Could not find font at path '#{File.expand_path(value)}'") unless File.exist?(value) end if key == 'fonts' - UI.user_error! "`fonts` must be an array" unless value.kind_of? Array + UI.user_error!("`fonts` must be an array") unless value.kind_of?(Array) value.each do |current| - UI.user_error! "You must specify a font path" if current.fetch('font', '').length == 0 - UI.user_error! "Could not find font at path '#{File.expand_path(current.fetch('font'))}'" unless File.exist? current.fetch('font') - UI.user_error! "`supported` must be an array" unless current.fetch('supported', []).kind_of? Array + UI.user_error!("You must specify a font path") if current.fetch('font', '').length == 0 + UI.user_error!("Could not find font at path '#{File.expand_path(current.fetch('font'))}'") unless File.exist?(current.fetch('font')) + UI.user_error!("`supported` must be an array") unless current.fetch('supported', []).kind_of? Array end end if key == 'background' - UI.user_error! "Could not find background image at path '#{File.expand_path(value)}'" unless File.exist? value + UI.user_error!("Could not find background image at path '#{File.expand_path(value)}'") unless File.exist? value end if key == 'color' - UI.user_error! "Invalid color '#{value}'. Must be valid Hex #123123" unless value.include? "#" + UI.user_error!("Invalid color '#{value}'. Must be valid Hex #123123") unless value.include?("#") end if key == 'padding' - UI.user_error! "padding must be type integer or pair of integers of format 'AxB'" unless value.kind_of?(Integer) || value.split('x').length == 2 + unless value.kind_of?(Integer) || value.split('x').length == 2 + UI.user_error!("padding must be type integer or pair of integers of format 'AxB'") + end end end end end end