tests/test-interhg.t
author Pierre-Yves David <pierre-yves.david@ens-lyon.org>
Fri, 04 Jan 2013 05:44:01 +0100
changeset 18272 95ef7a87c053
parent 17017 953faba28e91
permissions -rw-r--r--
performance: speedup computation of hidden revisions In their current state, revset calls can be very costlys, as we test predicates on the entire repository. The hidden filter is very widely used, and needs to be very fast. This change drops revset calls in favor of direct revision manipulation. Performance test on my Mercurial checkout - 19857 total changesets, - 1584 obsolete changesets, - 13310 obsolescence markers. Before: ! hidden ! wall 0.077553 After this changes: ! hidden ! wall 0.011230 Performance test on a Mozilla central checkout: - 117293 total changesets, - 1 obsolete changeset, - 1 obsolescence marker. Before: ! hidden ! wall 0.389472 After: ! hidden ! wall 0.000079
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
15446
c5c9ca3719f9 tests: use 'hghave serve' to guard tests that requires serve daemon management
Mads Kiilerich <mads@kiilerich.com>
parents: 12126
diff changeset
     1
  $ "$TESTDIR/hghave" serve || exit 80
c5c9ca3719f9 tests: use 'hghave serve' to guard tests that requires serve daemon management
Mads Kiilerich <mads@kiilerich.com>
parents: 12126
diff changeset
     2
12126
779098953457 tests: unify test-interhg
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10473
diff changeset
     3
  $ hg init test
779098953457 tests: unify test-interhg
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10473
diff changeset
     4
  $ cd test
10473
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
     5
12126
779098953457 tests: unify test-interhg
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10473
diff changeset
     6
  $ cat > .hg/hgrc <<EOF
779098953457 tests: unify test-interhg
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10473
diff changeset
     7
  > [extensions]
779098953457 tests: unify test-interhg
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10473
diff changeset
     8
  > interhg =
779098953457 tests: unify test-interhg
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10473
diff changeset
     9
  > 
779098953457 tests: unify test-interhg
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10473
diff changeset
    10
  > [interhg]
779098953457 tests: unify test-interhg
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10473
diff changeset
    11
  > issues = s|Issue(\d+)|<a href="http://bts.example.org/issue\1">Issue\1</a>|
779098953457 tests: unify test-interhg
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10473
diff changeset
    12
  > 
779098953457 tests: unify test-interhg
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10473
diff changeset
    13
  > # yes, 'x' is a weird delimiter...
779098953457 tests: unify test-interhg
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10473
diff changeset
    14
  > markbugs = sxbugx<i class="\x">bug</i>x
779098953457 tests: unify test-interhg
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10473
diff changeset
    15
  > EOF
10473
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    16
12126
779098953457 tests: unify test-interhg
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10473
diff changeset
    17
  $ touch foo
779098953457 tests: unify test-interhg
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10473
diff changeset
    18
  $ hg add foo
779098953457 tests: unify test-interhg
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10473
diff changeset
    19
  $ hg commit -d '1 0' -m 'Issue123: fixed the bug!'
10473
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    20
12126
779098953457 tests: unify test-interhg
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10473
diff changeset
    21
  $ hg serve -n test -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log
779098953457 tests: unify test-interhg
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10473
diff changeset
    22
  $ cat hg.pid >> $DAEMON_PIDS
10473
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    23
12126
779098953457 tests: unify test-interhg
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10473
diff changeset
    24
log
10473
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    25
17017
953faba28e91 tests: prepare get-with-headers.py for MSYS
Mads Kiilerich <mads@kiilerich.com>
parents: 16913
diff changeset
    26
  $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '' | grep bts
12126
779098953457 tests: unify test-interhg
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10473
diff changeset
    27
    <td class="description"><a href="/rev/1b0e7ece6bd6"><a href="http://bts.example.org/issue123">Issue123</a>: fixed the <i class="x">bug</i>!</a><span class="branchhead">default</span> <span class="tag">tip</span> </td>
10473
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    28
12126
779098953457 tests: unify test-interhg
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10473
diff changeset
    29
errors
779098953457 tests: unify test-interhg
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10473
diff changeset
    30
779098953457 tests: unify test-interhg
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10473
diff changeset
    31
  $ cat errors.log
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 15446
diff changeset
    32
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 15446
diff changeset
    33
  $ cd ..