tests/test-phases.t
author Pierre-Yves David <pierre-yves.david@ens-lyon.org>
Thu, 22 Dec 2011 00:40:46 +0100
changeset 15712 06b8b74720d6
parent 15694 1e4e49c58b94
child 15713 cff25e4b37d2
permissions -rw-r--r--
phases: test the new-commit option and proper inheritence of phase
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
15423
ea5b346024e1 phases: add a very simple test
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     1
  $ alias hglog='hg log --template "{rev} {phase} {desc}\n"'
15694
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
     2
  $ mkcommit() {
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
     3
  >    echo "$1" > "$1"
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
     4
  >    hg add "$1"
15712
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
     5
  >    message="$1"
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
     6
  >    shift
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
     7
  >    hg ci -m "$message" $*
15694
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
     8
  > }
15423
ea5b346024e1 phases: add a very simple test
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     9
ea5b346024e1 phases: add a very simple test
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    10
  $ hg init initialrepo
ea5b346024e1 phases: add a very simple test
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    11
  $ cd initialrepo
15694
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    12
  $ mkcommit A
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    13
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    14
New commit are draft by default
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    15
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    16
  $ hglog
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    17
  0 1 A
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    18
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    19
Following commit are draft too
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    20
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    21
  $ mkcommit B
15423
ea5b346024e1 phases: add a very simple test
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    22
ea5b346024e1 phases: add a very simple test
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    23
  $ hglog
15694
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    24
  1 1 B
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    25
  0 1 A
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    26
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    27
Draft commit are properly created over public one:
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    28
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    29
  $ hg pull -q . # XXX use the dedicated phase command once available
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    30
  $ hglog
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    31
  1 0 B
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    32
  0 0 A
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    33
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    34
  $ mkcommit C
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    35
  $ mkcommit D
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    36
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    37
  $ hglog
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    38
  3 1 D
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    39
  2 1 C
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    40
  1 0 B
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
    41
  0 0 A
15712
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    42
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    43
Test creating changeset as secret
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    44
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    45
  $ mkcommit E --config phases.new-commit=2
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    46
  $ hglog
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    47
  4 2 E
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    48
  3 1 D
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    49
  2 1 C
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    50
  1 0 B
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    51
  0 0 A
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    52
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    53
Test the secret property is inherited
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    54
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    55
  $ mkcommit H
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    56
  $ hglog
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    57
  5 2 H
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    58
  4 2 E
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    59
  3 1 D
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    60
  2 1 C
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    61
  1 0 B
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    62
  0 0 A
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    63
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    64
Even on merge
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    65
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    66
  $ hg up -q 1
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    67
  $ mkcommit "B'"
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    68
  created new head
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    69
  $ hglog
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    70
  6 1 B'
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    71
  5 2 H
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    72
  4 2 E
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    73
  3 1 D
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    74
  2 1 C
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    75
  1 0 B
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    76
  0 0 A
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    77
  $ hg merge 4 # E
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    78
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    79
  (branch merge, don't forget to commit)
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    80
  $ hg ci -m "merge B' and E"
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    81
  $ hglog
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    82
  7 2 merge B' and E
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    83
  6 1 B'
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    84
  5 2 H
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    85
  4 2 E
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    86
  3 1 D
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    87
  2 1 C
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    88
  1 0 B
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    89
  0 0 A
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
    90