1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00

Remove .scss, .sass, .less, .haml, .slim, coffee from Rake Notes. Now we have an API for register it in the corresponding gems

This commit is contained in:
robertomiranda 2014-03-14 15:34:24 -05:00
parent a2fb164a4f
commit 810af6f6ee
2 changed files with 5 additions and 17 deletions

View file

@ -28,11 +28,9 @@ class SourceAnnotationExtractor
self.extensions[/\.(#{extensions.join("|")})$/] = block
end
register_extensions("builder", "rb", "coffe", "rake") { |tag| /#\s*(#{tag}):?\s*(.*)$/ }
register_extensions("css", "scss", "sass", "less", "js") { |tag| /\/\/\s*(#{tag}):?\s*(.*)$/ }
register_extensions("builder", "rb", "rake") { |tag| /#\s*(#{tag}):?\s*(.*)$/ }
register_extensions("css", "js") { |tag| /\/\/\s*(#{tag}):?\s*(.*)$/ }
register_extensions("erb") { |tag| /<%\s*#\s*(#{tag}):?\s*(.*?)\s*%>/ }
register_extensions("haml") { |tag| /-\s*#\s*(#{tag}):?\s*(.*)$/ }
register_extensions("slim") { |tag| /\/\s*\s*(#{tag}):?\s*(.*)$/ }
# Returns a representation of the annotation that looks like this:
#

View file

@ -1,4 +1,5 @@
require "isolation/abstract_unit"
require 'rails/source_annotation_extractor'
module ApplicationTests
module RakeTests
@ -18,14 +19,8 @@ module ApplicationTests
test 'notes finds notes for certain file_types' do
app_file "app/views/home/index.html.erb", "<% # TODO: note in erb %>"
app_file "app/views/home/index.html.haml", "-# TODO: note in haml"
app_file "app/views/home/index.html.slim", "/ TODO: note in slim"
app_file "app/assets/javascripts/application.js.coffee", "# TODO: note in coffee"
app_file "app/assets/javascripts/application.js", "// TODO: note in js"
app_file "app/assets/stylesheets/application.css", "// TODO: note in css"
app_file "app/assets/stylesheets/application.css.scss", "// TODO: note in scss"
app_file "app/assets/stylesheets/application.css.sass", "// TODO: note in sass"
app_file "app/assets/stylesheets/application.css.less", "// TODO: note in less"
app_file "app/controllers/application_controller.rb", 1000.times.map { "" }.join("\n") << "# TODO: note in ruby"
app_file "lib/tasks/task.rake", "# TODO: note in rake"
app_file 'app/views/home/index.html.builder', '# TODO: note in builder'
@ -42,19 +37,13 @@ module ApplicationTests
lines = output.scan(/\[([0-9\s]+)\](\s)/)
assert_match(/note in erb/, output)
assert_match(/note in haml/, output)
assert_match(/note in slim/, output)
assert_match(/note in ruby/, output)
assert_match(/note in coffee/, output)
assert_match(/note in js/, output)
assert_match(/note in css/, output)
assert_match(/note in scss/, output)
assert_match(/note in sass/, output)
assert_match(/note in less/, output)
assert_match(/note in rake/, output)
assert_match(/note in builder/, output)
assert_equal 12, lines.size
assert_equal 6, lines.size
lines.each do |line|
assert_equal 4, line[0].size
@ -178,6 +167,7 @@ module ApplicationTests
test 'register a new extension' do
SourceAnnotationExtractor::Annotation.register_extensions(".test1", ".test2") { |tag| /#{tag}/ }
assert SourceAnnotationExtractor::Annotation.extensions[/(\.test1|\.test2)/]
assert_blank SourceAnnotationExtractor::Annotation.extensions[/(\.haml)/]
end
private