updated for version 7.4a.014
Problem:    Test 86 and 89 have a problem with using a shadow dir.
Solution:   Adjust for the different directory structure. (James McCoy)
diff --git a/src/testdir/test86.in b/src/testdir/test86.in
index 8b4a4c1..ba3557b 100644
--- a/src/testdir/test86.in
+++ b/src/testdir/test86.in
@@ -857,8 +857,19 @@
 cb.append(fnamemodify('.', ':p:h:t'))
 cb.append(vim.eval('@%'))
 os.chdir('..')
-cb.append(fnamemodify('.', ':p:h:t'))
-cb.append(vim.eval('@%').replace(os.path.sep, '/'))
+path = fnamemodify('.', ':p:h:t')
+if path != 'src':
+  # Running tests from a shadow directory, so move up another level
+  # This will result in @% looking like shadow/testdir/test86.in, hence the
+  # extra fnamemodify
+  os.chdir('..')
+  cb.append(fnamemodify('.', ':p:h:t'))
+  cb.append(fnamemodify(vim.eval('@%'), ':s?^%s.??' % path).replace(os.path.sep, '/'))
+  os.chdir(path)
+  del path
+else:
+  cb.append(fnamemodify('.', ':p:h:t'))
+  cb.append(vim.eval('@%').replace(os.path.sep, '/'))
 os.chdir('testdir')
 cb.append(fnamemodify('.', ':p:h:t'))
 cb.append(vim.eval('@%'))