diff tests/test-lfconvert.t @ 17823:0fc1ce271ee6

largefiles: fix a traceback in lfconvert if a largefile is missing (issue3519) The largefile may be missing for various reasons, including that a remote repository was cloned without the --all-largefiles option. Therefore, it seems reasonable to attempt to download the missing files and failing that, abort and indicate the affected file and revision so the user can manually fix the problem.
author Matt Harbison <matt_harbison@yahoo.com>
date Sun, 14 Oct 2012 14:44:08 -0400
parents f2719b387380
children 221c9c3146eb
line wrap: on
line diff
--- a/tests/test-lfconvert.t	Thu Oct 18 16:34:13 2012 -0500
+++ b/tests/test-lfconvert.t	Sun Oct 14 14:44:08 2012 -0400
@@ -1,3 +1,5 @@
+  $ USERCACHE="$TESTTMP/cache"; export USERCACHE
+  $ mkdir "${USERCACHE}"
   $ cat >> $HGRCPATH <<EOF
   > [extensions]
   > largefiles =
@@ -8,6 +10,7 @@
   > minsize = 0.5
   > patterns = **.other
   >     **.dat
+  > usercache=${USERCACHE}
   > EOF
 
 "lfconvert" works
@@ -270,3 +273,14 @@
   pass
 
   $ cd ..
+
+Avoid a traceback if a largefile isn't available (issue3519)
+
+  $ hg clone -U largefiles-repo issue3519
+  $ rm "${USERCACHE}"/*
+  $ hg lfconvert --to-normal issue3519 normalized3519
+  initializing destination normalized3519
+  abort: missing largefile 'large' from revision d4892ec57ce212905215fad1d9018f56b99202ad
+  [255]
+
+