Sha256: 0b6c69c54120d443854a0c4836dc7f8165a55073fc9c723e43feab4db232e3ab
Contents?: true
Size: 907 Bytes
Versions: 1
Compression:
Stored size: 907 Bytes
Contents
module Danger # Identify todos in a set of diffs class DiffTodoFinder TODO_REGEXP = / ^\+ # we only look at additions, marked by + in diffs \s* # followed by optional space [^a-z0-9\+]* # anything looking like a comment indicator, not a + \s+ # followed by at least one space (TODO|FIXME) # our todo indicator [\s:]{1} # followed by a space or colon (?<text>.*)$ # matching any text until the end of the line /ix def find_diffs_containing_todos(diffs) todos = [] diffs.each do |diff| matches = diff.patch.scan(TODO_REGEXP) next if matches.empty? matches.each do |match| todos << Todo.new(diff.path, match.first.strip) end end todos end class Todo < Struct.new(:file, :text) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
danger-todoist-0.2.0 | lib/todoist/diff_todo_finder.rb |