##// END OF EJS Templates
subrepo: calculate _relpath for hgsubrepo based on self instead of parent...
subrepo: calculate _relpath for hgsubrepo based on self instead of parent Prior to 105758d1b37b, the subrelpath() (now _relpath) for hgsubrepo was calculated by removing the root path of the outermost repo from the root path of the subrepo. Since the root paths use platform specific separators, and the relative path is printed by various commands, the output of these commands require a glob (and check-code.py enforces this). In an effort to be generic to all subrepos, 105758d1b37b started calculating this path based on the parent repo, and then joining the subrepo path in .hgsub. One of the tests in test-subrepo.t creates a subrepo inside a directory, so the path being joined contained '/' instead of '\'. This made the test fail with a '~' status, because the glob is unnecessary[1]. Removing them made the test work, but then check-code complains. We can't just drop the check-code rule, because sub-subrepos are still joined with '\'. Presumably the other subrepo types have this issue as well, but there likely isn't a test with git or svn repos inside a subdirectory. This simply restores the exact _relpath value (and output) for hgsubrepos prior to 105758d1b37b. [1] http://www.selenic.com/pipermail/mercurial-devel/2015-April/068720.html

File last commit:

r22047:8fb6844a default
r24786:56e15db9 default
Show More
test-permissions.t
72 lines | 1.2 KiB | text/troff | Tads3Lexer
/ tests / test-permissions.t
Matt Mackall
tests: change some #ifs to #requires
r22047 #require unix-permissions no-root
Mads Kiilerich
tests: use 'hghave unix-permissions' for tests that really use chmod...
r15443
Adrian Buehlmann
combine tests
r12279 $ hg init t
$ cd t
$ echo foo > a
$ hg add a
$ hg commit -m "1"
$ hg verify
checking changesets
checking manifests
crosschecking files in changesets and manifests
checking files
1 files, 1 changesets, 1 total revisions
$ chmod -r .hg/store/data/a.i
Matt Mackall
tests: cleanup exit code handling in unified tests
r12365 $ hg verify
Adrian Buehlmann
combine tests
r12279 checking changesets
checking manifests
crosschecking files in changesets and manifests
checking files
Mads Kiilerich
tests: remove redundant globs...
r12640 abort: Permission denied: $TESTTMP/t/.hg/store/data/a.i
Matt Mackall
tests: cleanup exit code handling in unified tests
r12365 [255]
Adrian Buehlmann
combine tests
r12279
$ chmod +r .hg/store/data/a.i
Matt Mackall
tests: cleanup exit code handling in unified tests
r12365 $ hg verify
Adrian Buehlmann
combine tests
r12279 checking changesets
checking manifests
crosschecking files in changesets and manifests
checking files
1 files, 1 changesets, 1 total revisions
$ chmod -w .hg/store/data/a.i
$ echo barber > a
Matt Mackall
tests: cleanup exit code handling in unified tests
r12365 $ hg commit -m "2"
Adrian Buehlmann
combine tests
r12279 trouble committing a!
Mads Kiilerich
tests: remove redundant globs...
r12640 abort: Permission denied: $TESTTMP/t/.hg/store/data/a.i
Matt Mackall
tests: cleanup exit code handling in unified tests
r12365 [255]
Adrian Buehlmann
combine tests
r12279
$ chmod -w .
$ hg diff --nodates
diff -r 2a18120dc1c9 a
--- a/a
+++ b/a
@@ -1,1 +1,1 @@
-foo
+barber
$ chmod +w .
$ chmod +w .hg/store/data/a.i
$ mkdir dir
$ touch dir/a
$ hg status
M a
? dir/a
$ chmod -rx dir
$ hg status
dir: Permission denied
M a
Reenable perm to allow deletion:
$ chmod +rx dir
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913 $ cd ..