# # # add_file "mtn_cvs/tests/push_loop/__driver__.lua" # content [03866d3669758695b5de83fbd306d3bf0837386a] # ============================================================ --- mtn_cvs/tests/push_loop/__driver__.lua 03866d3669758695b5de83fbd306d3bf0837386a +++ mtn_cvs/tests/push_loop/__driver__.lua 03866d3669758695b5de83fbd306d3bf0837386a @@ -0,0 +1,38 @@ +-- CVS push with fork and merge + +include("/common/cvs.lua") +mtn_setup() +cvs_setup() + +-- create a test project + +mkdir("cvstemp") +writefile("cvstemp/A","A\n") +writefile("cvstemp/B","B\n") +check(indir("cvstemp", cvs("import","-m","initial import", "test", "vendor_tag", "initial_import")), 0, false, false) + +-- change the repository in various ways +check(mtn_cvs("--branch=testbranch","pull",cvsroot,"test"),0, false,false) +check(mtn("co","--branch=testbranch","test"),0, false, false) +check(mtn("co","--branch=testbranch","test2"),0, false, false) + +check(indir("test", mtn("drop", "A")), 0, false, false) +check(indir("test", mtn("ci", "-m", "a dropped")), 0, false, false) + +check(mtn("automate", "heads"), 0, false, false) +canonicalize("stdout") +left = readfile("stdout") + +writefile("test2/C", "C\n") +check(indir("test2", mtn("add", "C")), 0, false, false) +check(indir("test2", mtn("ci", "-m", "c added")), 0, false, false) + +check(mtn("merge"), 0, false, false) +check(mtn_cvs("--branch=testbranch","-r",left,"push"),0, false,false) +-- no change yet +check(exists(cvsroot .. "/test/A,v")) +check(not exists(cvsroot .. "/test/C,v")) + +check(mtn_cvs("--branch=testbranch","-r",left,"push"),0, false,false) +check(exists(cvsroot .. "/test/Attic/A,v")) +check(exists(cvsroot .. "/test/C,v"))