diff --git a/src/run-tests.pl b/src/run-tests.pl index 23041dc..5cc1938 100755 --- a/src/run-tests.pl +++ b/src/run-tests.pl @@ -259,10 +259,33 @@ Slave :slave: SyncState * ".shift(); close FILE; - open FILE, "../mbsync -D -c .mbsyncrc test 2>&1 |"; + open FILE, "../mbsync -D -J -c .mbsyncrc test 2>&1 |"; my @out = ; close FILE; + open(FILE, "<", "slave/.mbsyncstate") or + die "Cannot read old sync state.\n"; + my @oss = ; + close FILE; + open(FILE, "<", "slave/.mbsyncstate.journal") or + die "Cannot read journal.\n"; + my @nj = ; + close FILE; + open(FILE, "<", "slave/.mbsyncstate.new") or + die "Cannot read new sync state.\n"; + my @nss = ; + close FILE; + open FILE, "../mbsync -D -c .mbsyncrc --noop test 2>&1 |"; + my @jout = ; + close FILE; + open(FILE, "<", "slave/.mbsyncstate") or + die "Cannot read sync state.\n"; + my @jss = ; + close FILE; unlink ".mbsyncrc"; + if ("@nss" ne "@jss") { + print "Journalling error.\nOld State:\n".join("", @oss)."\nJournal:\n".join("", @nj)."\nNew State:\n".join("", @jss)."\nExpected New State:\n".join("", @nss)."\n"; + exit 1; + } return @out; }