diff options
author | Xavier Noria <fxn@hashref.com> | 2015-11-09 09:11:13 -0800 |
---|---|---|
committer | Xavier Noria <fxn@hashref.com> | 2015-11-09 09:11:13 -0800 |
commit | 9a59beac6feced4e51fdddb5761208472be71719 (patch) | |
tree | e337775131d3394c25fce10bb94fb4c9e527ad54 /activesupport/test | |
parent | ab0c915ab54538f66406edc44070c1bdeacdd844 (diff) | |
download | rails-9a59beac6feced4e51fdddb5761208472be71719.tar.gz rails-9a59beac6feced4e51fdddb5761208472be71719.tar.bz2 rails-9a59beac6feced4e51fdddb5761208472be71719.zip |
adds more tests for the file monitors
Diffstat (limited to 'activesupport/test')
-rw-r--r-- | activesupport/test/file_update_checker_with_enumerable_test_cases.rb | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/activesupport/test/file_update_checker_with_enumerable_test_cases.rb b/activesupport/test/file_update_checker_with_enumerable_test_cases.rb index 1518562d7c..250fd90dde 100644 --- a/activesupport/test/file_update_checker_with_enumerable_test_cases.rb +++ b/activesupport/test/file_update_checker_with_enumerable_test_cases.rb @@ -130,4 +130,64 @@ module FileUpdateCheckerWithEnumerableTestCases assert !checker.execute_if_updated assert_equal 0, i end + + def test_does_not_assume_files_exist_on_instantiation + i = 0 + + non_existing = "#{@tmpdir}/non_existing.rb" + checker = new_checker([non_existing]) { i += 1 } + + touch(non_existing) + wait + + assert checker.execute_if_updated + assert_equal 1, i + end + + def test_detects_files_in_new_subdirectories + i = 0 + + checker = new_checker([], @tmpdir => :rb) { i += 1 } + + subdir = "#{@tmpdir}/subdir" + mkdir(subdir) + wait + + assert !checker.execute_if_updated + assert_equal 0, i + + touch("#{subdir}/nested.rb") + wait + + assert checker.execute_if_updated + assert_equal 1, i + end + + def test_looked_up_extensions_are_inherited_in_subdirectories_not_listening_to_them + i = 0 + + subdir = "#{@tmpdir}/subdir" + mkdir(subdir) + + checker = new_checker([], @tmpdir => :rb, subdir => :txt) { i += 1 } + + touch("#{@tmpdir}/new.txt") + wait + + assert !checker.execute_if_updated + assert_equal 0, i + + # subdir does not look for Ruby files, but its parent @tmpdir does. + touch("#{subdir}/nested.rb") + wait + + assert checker.execute_if_updated + assert_equal 1, i + + touch("#{subdir}/nested.txt") + wait + + assert checker.execute_if_updated + assert_equal 2, i + end end |