# # add_file "tests/t_netsync_exclude_default.at" # # patch "ChangeLog" # from [9303d644d87356150ad61d374d54d98ea92eac6f] # to [8a2078e550263a2098991365c88f06293b73b6a4] # # patch "tests/t_netsync_exclude_default.at" # from [] # to [11beeeb0a601ba2f06d47c89b228cdfbd3f660f9] # # patch "testsuite.at" # from [299b096892b017c73743ec624bee7cd5cf2e29a3] # to [e85a77ab1dec51c5e6e40ff821ad8742b3a1b927] # --- ChangeLog +++ ChangeLog @@ -1,5 +1,12 @@ 2005-07-11 Nathaniel Smith + * tests/t_netsync_exclude_default.at: New test. + * testsuite.at: Add it. + (NETSYNC_SERVE_N_START, NETSYNC_SERVE_START): Use '*' as pattern + when none is passed. + +2005-07-11 Nathaniel Smith + * monotone.texi (Network): Tweak documentation for netsync commands. --- tests/t_netsync_exclude_default.at +++ tests/t_netsync_exclude_default.at @@ -0,0 +1,101 @@ +AT_SETUP([--exclude defaults]) +AT_KEYWORDS([netsync]) +MONOTONE_SETUP +NETSYNC_SETUP + +ADD_FILE(testfile, [1 +]) +COMMIT(branch1) +B11=`BASE_REVISION` + +SET_FILE(testfile, [2 +]) +COMMIT(branch2) +B21=`BASE_REVISION` + + +RUN_NETSYNC(pull, 'branch*' --exclude=branch2) +AT_CHECK(MONOTONE2 cat revision $B11, [], [ignore], [ignore]) +AT_CHECK(MONOTONE2 cat revision $B21, [1], [ignore], [ignore]) + +REVERT_TO($B11) +SET_FILE(testfile, [12 +]) +COMMIT(branch1) +B12=`BASE_REVISION` + +REVERT_TO($B21) +SET_FILE(testfile, [21 +]) +COMMIT(branch2) +B22=`BASE_REVISION` + +RUN_NETSYNC(pull) +AT_CHECK(MONOTONE2 cat revision $B11, [], [ignore], [ignore]) +AT_CHECK(MONOTONE2 cat revision $B21, [1], [ignore], [ignore]) +AT_CHECK(MONOTONE2 cat revision $B12, [], [ignore], [ignore]) +AT_CHECK(MONOTONE2 cat revision $B22, [1], [ignore], [ignore]) + +# passing only an include pattern causes the default exclude to be +# ignored... +RUN_NETSYNC(pull, branch2) +AT_CHECK(MONOTONE2 cat revision $B11, [], [ignore], [ignore]) +AT_CHECK(MONOTONE2 cat revision $B21, [], [ignore], [ignore]) +AT_CHECK(MONOTONE2 cat revision $B12, [], [ignore], [ignore]) +AT_CHECK(MONOTONE2 cat revision $B22, [], [ignore], [ignore]) + +# but not set by default + +REVERT_TO($B12) +SET_FILE(testfile, [13 +]) +COMMIT(branch1) +B13=`BASE_REVISION` + +REVERT_TO($B22) +SET_FILE(testfile, [23 +]) +COMMIT(branch2) +B23=`BASE_REVISION` + +RUN_NETSYNC(pull) +AT_CHECK(MONOTONE2 cat revision $B11, [], [ignore], [ignore]) +AT_CHECK(MONOTONE2 cat revision $B21, [], [ignore], [ignore]) +AT_CHECK(MONOTONE2 cat revision $B12, [], [ignore], [ignore]) +AT_CHECK(MONOTONE2 cat revision $B22, [], [ignore], [ignore]) +AT_CHECK(MONOTONE2 cat revision $B13, [], [ignore], [ignore]) +AT_CHECK(MONOTONE2 cat revision $B23, [1], [ignore], [ignore]) + +# but --set-default overrides + +RUN_NETSYNC(pull --set-default, 'branch*') +AT_CHECK(MONOTONE2 cat revision $B11, [], [ignore], [ignore]) +AT_CHECK(MONOTONE2 cat revision $B21, [], [ignore], [ignore]) +AT_CHECK(MONOTONE2 cat revision $B12, [], [ignore], [ignore]) +AT_CHECK(MONOTONE2 cat revision $B22, [], [ignore], [ignore]) +AT_CHECK(MONOTONE2 cat revision $B13, [], [ignore], [ignore]) +AT_CHECK(MONOTONE2 cat revision $B23, [], [ignore], [ignore]) + +REVERT_TO($B13) +SET_FILE(testfile, [14 +]) +COMMIT(branch1) +B14=`BASE_REVISION` + +REVERT_TO($B23) +SET_FILE(testfile, [24 +]) +COMMIT(branch2) +B24=`BASE_REVISION` + +RUN_NETSYNC(pull) +AT_CHECK(MONOTONE2 cat revision $B11, [], [ignore], [ignore]) +AT_CHECK(MONOTONE2 cat revision $B21, [], [ignore], [ignore]) +AT_CHECK(MONOTONE2 cat revision $B12, [], [ignore], [ignore]) +AT_CHECK(MONOTONE2 cat revision $B22, [], [ignore], [ignore]) +AT_CHECK(MONOTONE2 cat revision $B13, [], [ignore], [ignore]) +AT_CHECK(MONOTONE2 cat revision $B23, [], [ignore], [ignore]) +AT_CHECK(MONOTONE2 cat revision $B14, [], [ignore], [ignore]) +AT_CHECK(MONOTONE2 cat revision $B24, [], [ignore], [ignore]) + +AT_CLEANUP --- testsuite.at +++ testsuite.at @@ -380,13 +380,15 @@ # note that NETSYNC_SERVE_START is _not_ a special case of this macro. m4_define([NETSYNC_SERVE_N_START], [ NETSYNC_KILLHARD -MONOTONE --db=test$1.db --rcfile=netsync.lua --pid-file=monotone_at.pid serve localhost:$_PORT $2 & +_FOO=$2 +MONOTONE --db=test$1.db --rcfile=netsync.lua --pid-file=monotone_at.pid serve localhost:$_PORT ${_FOO:-"*"} & sleep 4 ]) # run as NETSYNC_SERVE_START(pattern) m4_define([NETSYNC_SERVE_START], [ NETSYNC_KILLHARD -MONOTONE --rcfile=netsync.lua --pid-file=monotone_at.pid serve localhost:$_PORT $1 & +FOO=$1 +MONOTONE --rcfile=netsync.lua --pid-file=monotone_at.pid serve localhost:$_PORT ${_FOO:-"*"} & sleep 4 ]) # run as NETSYNC_SERVE_STOP @@ -668,3 +670,4 @@ m4_include(tests/t_set_default.at) m4_include(tests/t_netsync_read_permissions.at) m4_include(tests/t_netsync_exclude.at) +m4_include(tests/t_netsync_exclude_default.at)