diff options
author | Anton Lindqvist <anton@qvister.se> | 2011-12-26 16:58:30 +0100 |
---|---|---|
committer | Anton Lindqvist <anton@qvister.se> | 2011-12-26 16:58:30 +0100 |
commit | 9299bfdcd387253d83b645c205b8df477f2d0940 (patch) | |
tree | b469c57ea4b7ac70249e97d2b48665dd1eee10db /railties | |
parent | 9fffef5f463d3c1f518373423c9e2044836b0de6 (diff) | |
download | rails-9299bfdcd387253d83b645c205b8df477f2d0940.tar.gz rails-9299bfdcd387253d83b645c205b8df477f2d0940.tar.bz2 rails-9299bfdcd387253d83b645c205b8df477f2d0940.zip |
Align rake notes.
Diffstat (limited to 'railties')
-rw-r--r-- | railties/lib/rails/source_annotation_extractor.rb | 3 | ||||
-rw-r--r-- | railties/test/application/rake/notes_test.rb | 9 |
2 files changed, 11 insertions, 1 deletions
diff --git a/railties/lib/rails/source_annotation_extractor.rb b/railties/lib/rails/source_annotation_extractor.rb index 2286e0477a..684beb32a3 100644 --- a/railties/lib/rails/source_annotation_extractor.rb +++ b/railties/lib/rails/source_annotation_extractor.rb @@ -22,7 +22,7 @@ class SourceAnnotationExtractor # If +options+ has a flag <tt>:tag</tt> the tag is shown as in the example above. # Otherwise the string contains just line and text. def to_s(options={}) - s = "[%3d] " % line + s = "[#{line.to_s.rjust(options[:indent])}]" s << "[#{tag}] " if options[:tag] s << text end @@ -93,6 +93,7 @@ class SourceAnnotationExtractor # Prints the mapping from filenames to annotations in +results+ ordered by filename. # The +options+ hash is passed to each annotation's +to_s+. def display(results, options={}) + options[:indent] = results.map { |f, a| a.map(&:line) }.flatten.max.to_s.size results.keys.sort.each do |file| puts "#{file}:" results[file].each do |note| diff --git a/railties/test/application/rake/notes_test.rb b/railties/test/application/rake/notes_test.rb index 659cbfec0f..f4e74deb83 100644 --- a/railties/test/application/rake/notes_test.rb +++ b/railties/test/application/rake/notes_test.rb @@ -17,6 +17,7 @@ module ApplicationTests 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/controllers/application_controller.rb", 1000.times.map { "" }.join("\n") << "# TODO: note in ruby" boot_rails require 'rake' @@ -27,10 +28,18 @@ module ApplicationTests Dir.chdir(app_path) do output = `bundle exec rake notes` + lines = output.scan(/\[([0-9\s]+)\]/).flatten 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_equal 4, lines.size + assert_equal 4, lines[0].size + assert_equal 4, lines[1].size + assert_equal 4, lines[2].size + assert_equal 4, lines[3].size end end |