Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Add test coverage for rake notes

Add separate tests to verify directories covered
Add tests to verify file_types
  • Loading branch information...
commit b5472cf7f22cb6d06bfdb329b13b919998e4ad7b 1 parent 7d5146e
@jasonnoble jasonnoble authored jasonnoble committed
Showing with 36 additions and 1 deletion.
  1. +36 −1 railties/test/application/rake/notes_test.rb
View
37 railties/test/application/rake/notes_test.rb
@@ -12,7 +12,8 @@ def teardown
teardown_app
end
- test 'notes' do
+ 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"
@@ -51,6 +52,40 @@ def teardown
end
end
+ test 'notes finds notes in default directories' do
+
+ app_file "app/controllers/some_controller.rb", "# TODO: note in app directory"
+ app_file "config/initializers/some_initializer.rb", "# TODO: note in config directory"
+ app_file "lib/some_file.rb", "# TODO: note in lib directory"
+ app_file "script/run_something.rb", "# TODO: note in script directory"
+ app_file "test/some_test.rb", 1000.times.map { "" }.join("\n") << "# TODO: note in test directory"
+
+ boot_rails
+
+ require 'rake'
+ require 'rdoc/task'
+ require 'rake/testtask'
+
+ Rails.application.load_tasks
+
+ Dir.chdir(app_path) do
+ output = `bundle exec rake notes`
+ lines = output.scan(/\[([0-9\s]+)\]/).flatten
+
+ assert_match /note in app directory/, output
+ assert_match /note in config directory/, output
+ assert_match /note in lib directory/, output
+ assert_match /note in script directory/, output
+ assert_match /note in test directory/, output
+
+ assert_equal 5, lines.size
+
+ lines.each do |line_number|
+ assert_equal 4, line_number.size
+ end
+ end
+
+ end
private
def boot_rails
Please sign in to comment.
Something went wrong with that request. Please try again.