1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
|
--
-- test setting/clearing of the the execute file attribute works
--
skip_if(ostype=="Windows")
skip_if(string.sub(ostype, 1, 6)=="CYGWIN") -- test -x broken
mtn_setup()
writefile("foo", "some data")
check(mtn("add", "foo"), 0, false, false)
commit()
rev1 = base_revision()
check(mtn("attr", "set", "foo", "mtn:execute", "true"), 0, false, false)
check({"test", "-x","foo"}, 0, false, false)
commit()
rev2 = base_revision()
writefile("bar", "bar data")
check(mtn("add", "bar"), 0, false, false)
commit()
rev3 = base_revision()
check(mtn("update", "-r", rev1), 0, false, false)
check({"test", "!", "-x","foo"}, 0, false, false)
writefile("baz", "some data")
check(mtn("add", "baz"), 0, false, false)
commit()
rev4 = base_revision()
-- pluck the revision that set foo's execute bits
check(mtn("pluck", "-r", rev2), 0, false, false)
check({"test", "-x","foo"}, 0, false, false)
|