require 'test/unit' require 'rant/rantlib' require 'tutil' # Ensure we run in testproject directory. $testSubdirsDir = File.expand_path(File.dirname(__FILE__)) class TestSubdirs < Test::Unit::TestCase def setup Dir.chdir($testSubdirsDir) unless Dir.pwd == $testSubdirsDir end def teardown capture_std do assert_equal(0, Rant.run("clean")) end created = Rant::FileList["**/*t"].shun(".svn")#Dir["**/*t"] assert(created.empty?) end def test_load capture_std do assert_equal(0, Rant.run("-T")) end end def test_sub_dep capture_std do assert_equal(0, Rant.run("t")) end assert(test(?f, "sub1/t"), "t depends on sub1/t") assert(test(?f, "t")) end def test_sub_dep2 capture_std do assert_equal(0, Rant.run("2t")) end assert(test(?f, "sub2/t")) assert(test(?f, "2t")) assert(!test(?e, "sub1/t")) end def test_sub_task_from_commandline capture_std do assert_equal(0, Rant.run("sub1/t")) end assert(test(?f, "sub1/t")) assert(!test(?e, "t")) capture_std do assert_equal(0, Rant.run("sub1/clean")) end assert(!test(?f, "sub1/t")) end def test_root_dep capture_std do assert_equal(0, Rant.run("sub1/rootdep.t")) end assert(test(?f, "subdep.t")) assert(test(?f, "sub1/rootdep.t")) end def test_sub_sub_dep capture_std do assert_equal(0, Rant.run("sub2/subdep.t")) end assert(test(?f, "sub2/subdep.t")) assert(test(?f, "sub2/sub/rootdep.t")) end def test_sub_sub_rootref capture_std do assert_equal(0, Rant.run("sub2/sub/rootref.t")) end assert(test(?f, "t")) assert(test(?f, "sub2/sub/rootref.t")) end def test_root_sub_sub_rootref capture_std do assert_equal(0, Rant.run("sub_sub")) end assert(test(?f, "sub_sub.t")) assert(test(?f, "sub2/sub/rootref.t")) assert(test(?f, "t")) end def test_import run_import %w(-q --auto ant) assert_equal($?, 0) capture_std do assert_nothing_raised { Rant::Sys.ruby("ant", "-q", "sub_sub") } end assert(test(?f, "sub_sub.t")) assert(test(?f, "sub2/sub/rootref.t")) assert(test(?f, "t")) ensure File.delete "ant" if File.exist? "ant" end def test_directory capture_std do assert_equal(0, Rant.run("sub2/sub/dt/dt")) end assert(test(?d, "sub2/sub/dt")) assert(test(?d, "sub2/sub/dt/dt")) capture_std do assert_equal(0, Rant.run("sub2/sub/dt/dt")) end end def test_gen_task capture_std do assert_equal(0, Rant.run("sub2/sub/gt")) end assert(test(?f, "sub2/sub/gt")) assert(test(?d, "sub2/sub/dt")) assert(!test(?d, "sub2/sub/dt/dt")) capture_std do assert_equal(0, Rant.run("sub2/sub/gt")) end assert(!test(?d, "sub2/sub/dt/dt")) end def test_param_default capture_std do assert_equal(0, Rant.run("sub2/sub/create_param")) end assert(test(?f, "sub2/sub/param_default.t")) end def test_param_override capture_std do assert_equal(0, Rant.run( %w(sub2/sub/create_param param=param.t))) end assert(test(?f, "sub2/sub/param.t")) end end