Class: Audiothority::Inspector
- Inherits:
-
Object
- Object
- Audiothority::Inspector
- Defined in:
- lib/audiothority/inspector.rb
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(crawler, validators, tracker, opts = {}) ⇒ Inspector
constructor
A new instance of Inspector.
- #investigate ⇒ Object
Constructor Details
#initialize(crawler, validators, tracker, opts = {}) ⇒ Inspector
Returns a new instance of Inspector.
13 14 15 16 17 18 |
# File 'lib/audiothority/inspector.rb', line 13 def initialize(crawler, validators, tracker, opts={}) @crawler = crawler @validators = validators @tracker = tracker @extract = opts[:extract] || Extract.new end |
Class Method Details
.scan(dirs, tracker, opts = {}) ⇒ Object
5 6 7 8 9 10 11 |
# File 'lib/audiothority/inspector.rb', line 5 def self.scan(dirs, tracker, opts={}) paths = dirs.map { |d| Pathname.new(d) } crawler = Crawler.new(paths) validators = opts[:validators] || Validators.default inspector = new(crawler, validators, tracker) inspector.investigate end |
Instance Method Details
#investigate ⇒ Object
20 21 22 23 24 25 26 27 28 29 |
# File 'lib/audiothority/inspector.rb', line 20 def investigate @crawler.crawl do |path| @extract.(path.children) do || violations = @validators.map { |v| v.validate() }.select(&:invalid?) if violations.any? @tracker.mark(path, violations) end end end end |