Skip to content

Commit

Permalink
Merge pull request #1 from vassilevsky/develop
Browse files Browse the repository at this point in the history
Make Checker#relevant_globs method optional
  • Loading branch information
snthpr1d3 committed May 12, 2016
2 parents 41d6245 + 01fec45 commit 20f40be
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 5 deletions.
2 changes: 2 additions & 0 deletions lib/face_control/checker_runner.rb
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@ def comments
private

def relevant_filenames
return @filenames unless @checker.respond_to?(:relevant_globs)

@relevant_filenames ||= @checker.relevant_globs.map do |glob|
@filenames.select do |filename|
File.fnmatch?(glob, filename)
Expand Down
1 change: 1 addition & 0 deletions lib/face_control/checkers/_example.rb
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ class Example
# Define only if you use @options in the following methods
attr_writer :options

# @optional
# @return [Array<String>] Shell globs to filter only files relevant to this checker
# out of all files with added lines in the pull request
def relevant_globs
Expand Down
15 changes: 10 additions & 5 deletions test/face_control/checker_runner_test.rb
Original file line number Diff line number Diff line change
@@ -1,17 +1,22 @@
require 'test_helper'

class TestChecker
class CheckerWithoutGlobs
end

class CheckerWithGlobs
def relevant_globs
%w(*.rb Rakefile)
end
end

class CheckerRunnerTest < Minitest::Test
def setup
@runner = FaceControl::CheckerRunner.new(TestChecker, %w(config/file.yml Rakefile assets/foo.coffee lib/foo.rb))
def test_relevant_filenames_without_globs
runner = FaceControl::CheckerRunner.new(CheckerWithoutGlobs, %w(config/file.yml lib/foo.rb))
assert_equal %w(config/file.yml lib/foo.rb), runner.send(:relevant_filenames)
end

def test_relevant_filenames
assert_equal %w(lib/foo.rb Rakefile), @runner.send(:relevant_filenames)
def test_relevant_filenames_with_globs
runner = FaceControl::CheckerRunner.new(CheckerWithGlobs, %w(config/file.yml Rakefile assets/foo.coffee lib/foo.rb))
assert_equal %w(lib/foo.rb Rakefile), runner.send(:relevant_filenames)
end
end

0 comments on commit 20f40be

Please sign in to comment.