lib/railroad/controllers_diagram.rb in railroad-0.3.4 vs lib/railroad/controllers_diagram.rb in railroad-0.4.0

- old
+ new

@@ -8,19 +8,20 @@ # RailRoad controllers diagram class ControllersDiagram < AppDiagram def initialize(options) + options.exclude.map! {|e| e = "app/controllers/" + e} super options @graph.diagram_type = 'Controllers' end # Process controller files def generate STDERR.print "Generating controllers diagram\n" if @options.verbose - files = Dir.glob("app/controllers/**/*_controller.rb") + files = Dir.glob("app/controllers/**/*_controller.rb") - @options.exclude files << 'app/controllers/application.rb' files.each do |f| class_name = extract_class_name(f) # ApplicationController's file is 'application.rb' class_name += 'Controller' if class_name == 'Application' @@ -34,11 +35,12 @@ def load_classes begin disable_stdout # ApplicationController must be loaded first require "app/controllers/application.rb" - Dir.glob("app/controllers/**/*_controller.rb") {|c| require c } + files = Dir.glob("app/controllers/**/*_controller.rb") - @options.exclude + files.each {|c| require c } enable_stdout rescue LoadError enable_stdout print_error "controller classes" raise @@ -72,10 +74,11 @@ end # Generate the inheritance edge (only for ApplicationControllers) if @options.inheritance && (ApplicationController.subclasses.include? current_class.name) - @graph.add_edge ['is-a', current_class.name, current_class.superclass.name] + # REVERSE INHERITANCE (CHECK) + @graph.add_edge ['is-a', current_class.superclass.name, current_class.name] end end # process_class end # class ControllersDiagram