sapling/tests/test-fastmanifest-remotenames.t
Jun Wu 3d461ae600 check-ext: make checks stricter
Summary:
Enhance check-ext script to be more strict:

 - Only one foreign extension is allowed: `remotenames`
 - Require explicit path for in-repo extensions to avoid wrong extensions
   being tested

This would make the test more predicatable since system extensions
will be less likely to be imported. Explicit path is better than
setting `PYTHONPATH` since `hgext/name.py` could override
`hgext3rd/name.py` regardless of `PYTHONPATH`.

Test Plan: arc unit

Reviewers: phillco, durham, ikostia, #mercurial, stash

Reviewed By: stash

Subscribers: medson, mjpieters

Differential Revision: https://phabricator.intern.facebook.com/D5271430

Signature: t1:5271430:1497861776:7dd35ec7c522cd9b26aa0871cb4306b4f1b8993a
2017-06-19 08:02:38 -07:00

80 lines
2.2 KiB
Perl

$ . $TESTDIR/require-ext.sh remotenames
Setup
$ PYTHONPATH=$TESTDIR/..:$PYTHONPATH
$ export PYTHONPATH
$ mkcommit() {
> echo "$1" > "$1"
> hg add "$1"
> echo "add $1" > msg
> echo "" >> msg
> hg ci -l msg
> }
Check that remotename changes trigger caching
$ cat >> $HGRCPATH << EOF
> [extensions]
> remotenames=
> fastmanifest=$TESTDIR/../fastmanifest
> [fastmanifest]
> cacheonchange=True
> cacheonchangebackground=False
> [remotenames]
> rename.default=remote
> EOF
$ hg init server
$ cd server
$ mkcommit a
$ mkcommit b
$ mkcommit c
$ hg book master -r ".^"
$ cd ..
$ hg clone server client -q
$ cd server
$ hg book master -r "." -f
$ cd ../client
$ hg log -r "fastmanifesttocache()"
changeset: 1:7c3bad9141dc
bookmark: remote/master
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: add b
$ hg debugcache -a
$ hg debugcachemanifest --debug --list
[FM] caching revset: [], pruneall(False), list(True)
fasta539ce0c1a22b0ecf34498f9f5ce8ea56df9ecb7 (size 184 bytes)
cache size is: 184 bytes
number of entries is: 1
Most relevant cache entries appear first
================================================================================
manifest node |revs
a539ce0c1a22b0ecf34498f9f5ce8ea56df9ecb7|1
$ hg debugcachemanifest --debug --pruneall
[FM] caching revset: [], pruneall(True), list(False)
[FM] removing cached manifest fasta539ce0c1a22b0ecf34498f9f5ce8ea56df9ecb7
$ hg pull -r master
pulling from $TESTTMP/server (glob)
no changes found
$ hg log -r remote/master
changeset: 2:4538525df7e2
tag: tip
bookmark: remote/master
branch: remote/default
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: add c
$ hg debugcachemanifest --debug --list
[FM] caching revset: [], pruneall(False), list(True)
faste3738bf5439958f89499a656982023aba57b076e (size 232 bytes)
cache size is: 232 bytes
number of entries is: 1
Most relevant cache entries appear first
================================================================================
manifest node |revs
e3738bf5439958f89499a656982023aba57b076e|2