Patchwork D7479: repoview: add a test to track operation not supposed to trigger filtering

login
register
mail settings
Submitter phabricator
Date Nov. 22, 2019, 9:20 a.m.
Message ID <differential-rev-PHID-DREV-uufnqefq2io3d2iwz22s-req@mercurial-scm.org>
Download mbox | patch
Permalink /patch/43413/
State Superseded
Headers show

Comments

phabricator - Nov. 22, 2019, 9:20 a.m.
marmoute created this revision.
Herald added subscribers: mercurial-devel, mjpieters.
Herald added a reviewer: hg-reviewers.

REVISION SUMMARY
  This test will be useful to confirm we removed filtering trigger and to prevent
  it to come back without us noticing.

REPOSITORY
  rHG Mercurial

REVISION DETAIL
  https://phab.mercurial-scm.org/D7479

AFFECTED FILES
  tests/test-repo-filters-tiptoe.t

CHANGE DETAILS




To: marmoute, #hg-reviewers
Cc: mjpieters, mercurial-devel

Patch

diff --git a/tests/test-repo-filters-tiptoe.t b/tests/test-repo-filters-tiptoe.t
new file mode 100644
--- /dev/null
+++ b/tests/test-repo-filters-tiptoe.t
@@ -0,0 +1,53 @@ 
+===================================
+Test repository filtering avoidance
+===================================
+
+This test file is a bit special as he does not check feature, but performance related internal code path.
+
+Right now, filtering a repository comes with a cost that might be significant.
+Until this get better, ther are various operation that try hard not to trigger
+a filtering computation. This test file make sure we don't reintroduce code that trigger the filtering for these operation:
+
+Setup
+-----
+  $ hg init test-repo
+  $ cd test-repo
+  $ echo "some line" > z
+  $ echo a > a
+  $ hg commit -Am a
+  adding a
+  adding z
+  $ echo "in a" >> z
+  $ echo b > b
+  $ hg commit -Am b
+  adding b
+  $ echo "file" >> z
+  $ echo c > c
+  $ hg commit -Am c
+  adding c
+  $ hg rm a
+  $ echo c1 > c
+  $ hg add c
+  c already tracked!
+  $ echo d > d
+  $ hg add d
+  $ rm b
+
+  $ cat << EOF >> $HGRCPATH
+  > [devel]
+  > debug.repo-filters = yes
+  > [ui]
+  > debug = yes
+  > EOF
+
+
+tests
+-----
+
+Getting the node of `null`
+
+  $ hg init test-repo
+  $ cd test-repo
+  $ hg log -r null -T "{node}\n"
+  debug.filters: computing revision filter for "visible"
+  0000000000000000000000000000000000000000