##// END OF EJS Templates
smartset: use native set operations as fast paths...
smartset: use native set operations as fast paths For set operations like "&" and "-", where we know both basesets have their sets ready, and the first set is sorted, use the native Python set operations as a fast path. Note: "+" is not optimized as that will break the ordering. This leads to noticeable improvements on performance: revset | before | after | delta ---------------------------------------------------------------- draft() & draft() & draft() & draft() | 776 | 477 | -39% draft() + draft() + draft() + draft() | 2849 | 2864 | draft() - draft() + draft() - draft() | 943 | 240 | -75% draft() - draft() - draft() - draft() | 557 | 197 | -64% (time measured in microseconds)

File last commit:

r29873:80ba176b default
r31020:2d1bf840 default
Show More
test-gpg.t
56 lines | 1.1 KiB | text/troff | Tads3Lexer
Matt Mackall
tests: replace exit 80 with #require
r22046 #require gpg
Matt Mackall
tests: unify test-gpg
r12428 Test the GPG extension
$ cat <<EOF >> $HGRCPATH
> [extensions]
> gpg=
>
> [gpg]
Yuya Nishihara
test-gpg: make temporary copy of GNUPGHOME...
r29789 > cmd=gpg --no-permission-warning --no-secmem-warning --no-auto-check-trustdb
Matt Mackall
tests: unify test-gpg
r12428 > EOF
Yuya Nishihara
test-gpg: make temporary copy of GNUPGHOME...
r29789 $ GNUPGHOME="$TESTTMP/gpg"; export GNUPGHOME
$ cp -R "$TESTDIR/gpg" "$GNUPGHOME"
Yuya Nishihara
test-gpg: start gpg-agent by gpg-connect-agent only if GnuPG v2.1+ detected...
r29873 Start gpg-agent, which is required by GnuPG v2
#if gpg21
$ gpg-connect-agent -q --subst /serverpid '/echo ${get serverpid}' /bye \
> >> $DAEMON_PIDS
#endif
and migrate secret keys
Yuya Nishihara
test-gpg: start gpg-agent under control of the test runner...
r29790
#if gpg2
Yuya Nishihara
test-gpg: run migration of v1 secret keys beforehand...
r29791 $ gpg --no-permission-warning --no-secmem-warning --list-secret-keys \
> > /dev/null 2>&1
Yuya Nishihara
test-gpg: start gpg-agent under control of the test runner...
r29790 #endif
Matt Mackall
tests: unify test-gpg
r12428 $ hg init r
$ cd r
$ echo foo > foo
$ hg ci -Amfoo
adding foo
$ hg sigs
FUJIWARA Katsunori
gpg: accept '--edit' like other commands creating new changeset...
r21711 $ HGEDITOR=cat hg sign -e 0
Martin Geisler
gpg: lowercase messages
r16927 signing 0:e63c23eaa88a
FUJIWARA Katsunori
gpg: accept '--edit' like other commands creating new changeset...
r21711 Added signature for changeset e63c23eaa88a
HG: Enter commit message. Lines beginning with 'HG:' are removed.
HG: Leave message empty to abort commit.
HG: --
HG: user: test
HG: branch 'default'
HG: added .hgsigs
Matt Mackall
tests: unify test-gpg
r12428
$ hg sigs
hgtest 0:e63c23eaa88ae77967edcf4ea194d31167c478b0
$ hg sigcheck 0
e63c23eaa88a is signed by:
hgtest
Greg Ward
test-gpg: make sure gpg does not modify the trustdb.gpg file...
r16289
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913 $ cd ..