test/test_source.rb in rant-0.3.6 vs test/test_source.rb in rant-0.3.8

- old
+ new

@@ -7,11 +7,11 @@ # Ensure we run in testproject directory. $testDir ||= File.expand_path(File.dirname(__FILE__)) class TestSource < Test::Unit::TestCase def setup - Dir.chdir($testDir) unless Dir.pwd == $testDir + Dir.chdir $testDir end def teardown capture_std do assert_equal(0, Rant.run("clean")) end @@ -20,7 +20,34 @@ capture_std do assert_equal(0, Rant.run("auto.t")) end assert(test(?f, "auto.rf")) assert(test(?f, "auto.t")) + end + def test_source_now + open "rf.t", "w" do |f| + f << <<-EOF + file "source.rf.t" do |t| + sys.touch t.name + end + task :source_now do + source :n, "source.rf.t" + end + task :source_now2 do + sys.touch "source.rf.t" + source :n, "source.rf.t" + end + task :mk_source do + source "source.rf.t" + end + EOF + end + assert_rant("-frf.t", "mk_source") + assert(test(?f, "source.rf.t")) + FileUtils.rm "source.rf.t" + out, err = assert_rant(:fail, "-frf.t", "source_now") + assert(!test(?f, "source.rf.t")) + assert_match(/\[ERROR\].*source.*No such file.*source\.rf\.t/im, err) + assert_rant("-frf.t", "source_now2") + assert(test(?f, "source.rf.t")) end end