lib/report/reporter.rb in theotokos-0.1.1 vs lib/report/reporter.rb in theotokos-0.1.2

- old
+ new

@@ -1,76 +1,78 @@ -module Report +module Theotokos + module Report - class Reporter - - def initialize - yield self if block_given? - end - - def self.create_reporter(report_type = :console) - case report_type.to_sym - when :console then Console.new - when :json then Json.new - when :html then Html.new - else nil + class Reporter + + def initialize + yield self if block_given? end - end - attr_accessor :data, :locale - - def print - raise Exception, 'Not supported operation for ' + self.class.name - end - - protected - def config_locale - @logger = AppLogger.create_logger self if @logger.nil? - @logger.info "Localizing report to '#{ENV['ws.test.reports.locale']}' idiom" + def self.create_reporter(report_type = :console) + case report_type.to_sym + when :console then Console.new + when :json then Json.new + when :html then Html.new + else nil + end + end - if ENV['ws.test.reports.locale'] == 'en' - _config_default_locale - else - locale_file = File.join(ENV['ws.test.reports.locales.path'], ENV['ws.test.reports.locale']) - unless File.exist? locale_file - @logger.warn "Locale configuration file '#{locale_file}' for lacale '#{ENV['ws.test.reports.locale']}' does not exist" - @logger.warn "Loading default locale for 'en' idiom" + attr_accessor :data, :locale + + def print + raise Exception, 'Not supported operation for ' + self.class.name + end + + protected + def config_locale + @logger = AppLogger.create_logger self if @logger.nil? + @logger.info "Localizing report to '#{ENV['ws.test.reports.locale']}' idiom" + + if ENV['ws.test.reports.locale'] == 'en' _config_default_locale else - @locale = YAML.load_file File.join(ENV['ws.test.reports.locales.path'], ENV['ws.test.reports.locale']) + locale_file = File.join(ENV['ws.test.reports.locales.path'], ENV['ws.test.reports.locale']) + unless File.exist? locale_file + @logger.warn "Locale configuration file '#{locale_file}' for lacale '#{ENV['ws.test.reports.locale']}' does not exist" + @logger.warn "Loading default locale for 'en' idiom" + _config_default_locale + else + @locale = YAML.load_file File.join(ENV['ws.test.reports.locales.path'], ENV['ws.test.reports.locale']) + end end + + @locale = Hash.new unless @locale.instance_of? Hash + _config_default_values end - @locale = Hash.new unless @locale.instance_of? Hash - _config_default_values - end - - private - def _config_default_locale - @logger.debug 'Loading default locale: en' - @logger.debug 'Looking for custom locale config file for en' - - default_locale_file = File.join(ENV['ws.test.reports.locales.path'], 'en') - @locale = unless File.exist? default_locale_file - @logger.debug "Custom locale config file for 'en' does not exist" - @logger.debug "Loading defaul locale config file" - YAML.load_file File.expand_path('../default_locale', __FILE__) - else - begin - @logger.info "Loading custom locale file '#{default_locale_file}'" - YAML.load_file default_locale_file - rescue Exception => ex - @logger.error ex - @logger.warn "Loading defaul locale config file" + private + def _config_default_locale + @logger.debug 'Loading default locale: en' + @logger.debug 'Looking for custom locale config file for en' + + default_locale_file = File.join(ENV['ws.test.reports.locales.path'], 'en') + @locale = unless File.exist? default_locale_file + @logger.debug "Custom locale config file for 'en' does not exist" + @logger.debug "Loading defaul locale config file" YAML.load_file File.expand_path('../default_locale', __FILE__) + else + begin + @logger.info "Loading custom locale file '#{default_locale_file}'" + YAML.load_file default_locale_file + rescue Exception => ex + @logger.error ex + @logger.warn "Loading defaul locale config file" + YAML.load_file File.expand_path('../default_locale', __FILE__) + end end end - end + + def _config_default_values + @locale['date.pattern'] ||= '%Y-%m-%d %l:%M:%S %p' + @locale['suite.data.expand'] ||= '+' + @locale['suite.data.collapse'] ||= '-' + end - def _config_default_values - @locale['date.pattern'] ||= '%Y-%m-%d %l:%M:%S %p' - @locale['suite.data.expand'] ||= '+' - @locale['suite.data.collapse'] ||= '-' end - - end + end end