lib/roodi/core/runner.rb in roodi-2.1.0 vs lib/roodi/core/runner.rb in roodi-2.2.0
- old
+ new
@@ -13,11 +13,10 @@
attr_writer :config
def initialize(*checks)
@config = DEFAULT_CONFIG
@checks = checks unless checks.empty?
- @parser = Parser.new
end
def check(filename, content)
@checks ||= load_checks
@checker ||= CheckingVisitor.new(@checks)
@@ -34,11 +33,11 @@
def check_file(filename)
check(filename, File.read(filename))
end
def print(filename, content)
- node = @parser.parse(content, filename)
+ node = parse(content, filename)
puts "Line: #{node.line}"
pp node
end
def print_content(content)
@@ -57,24 +56,25 @@
private
def parse(filename, content)
begin
- @parser.parse(content, filename)
+ Parser.new.parse(content, filename)
rescue Exception => e
puts "#{filename} looks like it's not a valid Ruby file. Skipping..." if ENV["ROODI_DEBUG"]
nil
end
end
def load_checks
check_objects = []
checks = YAML.load_file @config
- checks.each do |check|
- klass = eval("Roodi::Checks::#{check[0]}")
- check_objects << (check[1].empty? ? klass.new : klass.new(check[1]))
+ checks.each do |check_class_name, options|
+ check_class = Roodi::Checks.const_get(check_class_name)
+ check_objects << check_class.make(options || {})
end
check_objects
end
+
end
end
end