tests/test-diff-subdir.t
author Mike Edgar <adgar@google.com>
Wed, 14 Jan 2015 15:16:08 -0500
changeset 24255 4bfe9f2d9761
parent 16913 f2719b387380
child 24432 e22248f6d257
permissions -rw-r--r--
revlog: addgroup checks if incoming deltas add censored revs, sets flag bit A censored revision stored in a revlog should have the censored revlog index flag bit set. This implies we must know if a revision is censored before we add it to the revlog. When adding revisions from exchanged deltas, we would prefer to determine this flag without decoding every single full text. This change introduces a heuristic based on assumptions around the Mercurial delta format and filelog metadata. Since deltas which produce a censored revision must be full-replacement deltas, we can read the delta's first bytes to check the filelog metadata. Since "censored" is the alphabetically first filelog metadata key, censored filelog revisions have a well-known prefix we can look for. For more on the design and background of the censorship feature, see: http://mercurial.selenic.com/wiki/CensorPlan
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12140
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
     1
  $ hg init
2879
66eff8355168 tests: new test for hg diff of a subdirectory only
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
     2
12140
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
     3
  $ mkdir alpha
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
     4
  $ touch alpha/one
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
     5
  $ mkdir beta
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
     6
  $ touch beta/two
2879
66eff8355168 tests: new test for hg diff of a subdirectory only
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
     7
12140
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
     8
  $ hg add alpha/one beta/two
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
     9
  $ hg ci -m "start"
2879
66eff8355168 tests: new test for hg diff of a subdirectory only
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
    10
12140
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    11
  $ echo 1 > alpha/one
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    12
  $ echo 2 > beta/two
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    13
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    14
everything
2879
66eff8355168 tests: new test for hg diff of a subdirectory only
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
    15
12140
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    16
  $ hg diff --nodates
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    17
  diff -r 7d5ef1aea329 alpha/one
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    18
  --- a/alpha/one
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    19
  +++ b/alpha/one
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    20
  @@ -0,0 +1,1 @@
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    21
  +1
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    22
  diff -r 7d5ef1aea329 beta/two
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    23
  --- a/beta/two
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    24
  +++ b/beta/two
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    25
  @@ -0,0 +1,1 @@
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    26
  +2
2879
66eff8355168 tests: new test for hg diff of a subdirectory only
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
    27
12140
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    28
beta only
2879
66eff8355168 tests: new test for hg diff of a subdirectory only
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
    29
12140
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    30
  $ hg diff --nodates beta
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    31
  diff -r 7d5ef1aea329 beta/two
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    32
  --- a/beta/two
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    33
  +++ b/beta/two
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    34
  @@ -0,0 +1,1 @@
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    35
  +2
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    36
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    37
inside beta
2879
66eff8355168 tests: new test for hg diff of a subdirectory only
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
    38
12140
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    39
  $ cd beta
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    40
  $ hg diff --nodates .
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    41
  diff -r 7d5ef1aea329 beta/two
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    42
  --- a/beta/two
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    43
  +++ b/beta/two
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    44
  @@ -0,0 +1,1 @@
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    45
  +2
552ea44c1842 tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents: 3199
diff changeset
    46
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 12140
diff changeset
    47
  $ cd ..