Mercurial > public > mercurial-scm > hg
diff tests/test-largefiles.t @ 16594:5516fdf3fe24 stable
largefiles: in putlfile, ensure tempfile's directory exists prior to creation
Let R be a repo served by an hg daemon on a machine with an empty largefiles
cache. Pushing a largefiles repo to R will result in a no-such-file-or-directory
OSError because putlfile will attempt to create a temporary file in
R/.hg/largefiles, which does not yet exist.
This patch also adds a regression test for this scenario.
author | hlian |
---|---|
date | Fri, 04 May 2012 14:36:40 -0400 |
parents | ebd2ead59f1c |
children | ddd4996740c7 |
line wrap: on
line diff
--- a/tests/test-largefiles.t Wed May 02 17:15:11 2012 -0700 +++ b/tests/test-largefiles.t Fri May 04 14:36:40 2012 -0400 @@ -952,6 +952,31 @@ [255] $ rm -rf empty +Push a largefiles repository to a served empty repository + $ hg init r8 + $ echo c3 > r8/f1 + $ hg add --large r8/f1 -R r8 + $ hg commit -m "m1" -R r8 + Invoking status precommit hook + A f1 + $ hg init empty + $ hg serve -R empty -d -p $HGPORT2 --pid-file hg.pid \ + > --config 'web.allow_push=*' --config web.push_ssl=False + $ cat hg.pid >> $DAEMON_PIDS + $ rm ${USERCACHE}/* + $ hg push -R r8 http://localhost:$HGPORT2 + pushing to http://localhost:$HGPORT2/ + searching for changes + searching for changes + remote: adding changesets + remote: adding manifests + remote: adding file changes + remote: added 1 changesets with 1 changes to 1 files + $ rm -rf empty + +used all HGPORTs, kill all daemons + $ "$TESTDIR/killdaemons.py" + Clone a local repository owned by another user We have to simulate that here by setting $HOME and removing write permissions $ ORIGHOME="$HOME"