Mercurial > hg
comparison tests/test-fix.t @ 43948:9595b6a9f0d5
tests: show that fileset patterns don't work with `fix` when not in repo root
Differential Revision: https://phab.mercurial-scm.org/D7569
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Fri, 06 Dec 2019 20:29:02 -0500 |
parents | 699d6be3820a |
children | eebdd6709868 |
comparison
equal
deleted
inserted
replaced
43946:ac627ed8a911 | 43948:9595b6a9f0d5 |
---|---|
1301 | 1301 |
1302 $ cat >> .hg/hgrc <<EOF | 1302 $ cat >> .hg/hgrc <<EOF |
1303 > [fix] | 1303 > [fix] |
1304 > printcwd:command = "$PYTHON" -c "import os; print(os.getcwd())" | 1304 > printcwd:command = "$PYTHON" -c "import os; print(os.getcwd())" |
1305 > printcwd:pattern = relpath:foo/bar | 1305 > printcwd:pattern = relpath:foo/bar |
1306 > filesetpwd:command = "$PYTHON" -c "import os; print('fs: ' + os.getcwd())" | |
1307 > filesetpwd:pattern = set:**quux | |
1306 > EOF | 1308 > EOF |
1307 | 1309 |
1308 $ mkdir foo | 1310 $ mkdir foo |
1309 $ printf "bar\n" > foo/bar | 1311 $ printf "bar\n" > foo/bar |
1312 $ printf "quux\n" > quux | |
1310 $ hg commit -Aqm blah | 1313 $ hg commit -Aqm blah |
1311 | 1314 |
1312 $ hg fix -w -r . foo/bar | 1315 $ hg fix -w -r . foo/bar |
1313 $ hg cat -r tip foo/bar | 1316 $ hg cat -r tip foo/bar |
1314 $TESTTMP/subprocesscwd | 1317 $TESTTMP/subprocesscwd |
1316 $TESTTMP/subprocesscwd | 1319 $TESTTMP/subprocesscwd |
1317 | 1320 |
1318 $ cd foo | 1321 $ cd foo |
1319 | 1322 |
1320 $ hg fix -w -r . bar | 1323 $ hg fix -w -r . bar |
1321 $ hg cat -r tip bar | 1324 $ hg cat -r tip bar ../quux |
1322 $TESTTMP/subprocesscwd | 1325 $TESTTMP/subprocesscwd |
1323 $ cat bar | 1326 quux |
1327 $ cat bar ../quux | |
1324 $TESTTMP/subprocesscwd | 1328 $TESTTMP/subprocesscwd |
1329 quux | |
1325 $ echo modified > bar | 1330 $ echo modified > bar |
1326 $ hg fix -w bar | 1331 $ hg fix -w bar |
1327 $ cat bar | 1332 $ cat bar |
1328 $TESTTMP/subprocesscwd | 1333 $TESTTMP/subprocesscwd |
1334 | |
1335 Apparently fixing p1() and its descendants doesn't include wdir() unless | |
1336 explicitly stated. | |
1337 | |
1338 BROKEN: fileset matches aren't relative to repo.root for commits | |
1339 | |
1340 $ hg fix -r '.::' | |
1341 $ hg cat -r . ../quux | |
1342 quux | |
1343 $ hg cat -r tip ../quux | |
1344 quux | |
1345 $ cat ../quux | |
1346 quux | |
1347 | |
1348 Clean files are not fixed unless explicitly named | |
1349 $ echo 'dirty' > ../quux | |
1350 | |
1351 BROKEN: fileset matches aren't relative to repo.root for wdir | |
1352 | |
1353 $ hg fix --working-dir | |
1354 $ cat ../quux | |
1355 dirty | |
1329 | 1356 |
1330 $ cd ../.. | 1357 $ cd ../.. |
1331 | 1358 |
1332 Tools configured without a pattern are ignored. It would be too dangerous to | 1359 Tools configured without a pattern are ignored. It would be too dangerous to |
1333 run them on all files, because this might happen while testing a configuration | 1360 run them on all files, because this might happen while testing a configuration |