Class: RailsEngineToolkit::RouteInspector

Inherits:
Object
  • Object
show all
Defined in:
lib/rails_engine_toolkit/route_inspector.rb

Defined Under Namespace

Classes: Mount

Instance Method Summary collapse

Constructor Details

#initialize(content) ⇒ RouteInspector

Returns a new instance of RouteInspector.



7
8
9
# File 'lib/rails_engine_toolkit/route_inspector.rb', line 7

def initialize(content)
  @content = content
end

Instance Method Details

#includes_mount?(engine_class, path) ⇒ Boolean

Returns:

  • (Boolean)


19
20
21
# File 'lib/rails_engine_toolkit/route_inspector.rb', line 19

def includes_mount?(engine_class, path)
  mounts.any? { |mount| mount.engine_class == engine_class && mount.path == path }
end

#mountsObject



11
12
13
14
15
16
17
# File 'lib/rails_engine_toolkit/route_inspector.rb', line 11

def mounts
  return [] unless syntax_valid?

  @content.lines.each_with_index.flat_map do |line, index|
    extract_mounts_from_line(line, index + 1)
  end
end

#syntax_valid?Boolean

Returns:

  • (Boolean)


23
24
25
# File 'lib/rails_engine_toolkit/route_inspector.rb', line 23

def syntax_valid?
  !Ripper.sexp(@content).nil?
end