tests/test-extdiff.t
author Siddharth Agarwal <sid0@fb.com>
Fri, 18 Jan 2013 15:55:16 -0800
changeset 18442 ecba9b0e7672
parent 17837 b623e323c561
child 22110 26f7c8033bed
permissions -rw-r--r--
posix: don't compare atime when determining if a file has changed A file's atime might change even if the file itself doesn't change. This might cause us to invalidate caches more often than necessary. Before this change, hg add often resulted in the dirstate being parsed twice on systems that track atime. After this change, it is only parsed once. For a repository with over 180,000 files, this speeds up hg add from 1.2 seconds to 1.0.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12304
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
     1
  $ echo "[extensions]" >> $HGRCPATH
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
     2
  $ echo "extdiff=" >> $HGRCPATH
2906
453097750fbf extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
     3
12304
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
     4
  $ hg init a
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
     5
  $ cd a
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
     6
  $ echo a > a
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
     7
  $ echo b > b
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
     8
  $ hg add
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
     9
  adding a
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    10
  adding b
2906
453097750fbf extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    11
12304
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    12
Should diff cloned directories:
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    13
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    14
  $ hg extdiff -o -r $opt
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    15
  Only in a: a
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    16
  Only in a: b
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12304
diff changeset
    17
  [1]
12304
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    18
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    19
  $ echo "[extdiff]" >> $HGRCPATH
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    20
  $ echo "cmd.falabala=echo" >> $HGRCPATH
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    21
  $ echo "opts.falabala=diffing" >> $HGRCPATH
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    22
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    23
  $ hg falabala
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    24
  diffing a.000000000000 a
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12304
diff changeset
    25
  [1]
2906
453097750fbf extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    26
12304
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    27
  $ hg help falabala
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    28
  hg falabala [OPTION]... [FILE]...
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    29
  
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    30
  use 'echo' to diff repository (or selected files)
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    31
  
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    32
      Show differences between revisions for the specified files, using the
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    33
      'echo' program.
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    34
  
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    35
      When two revision arguments are given, then changes are shown between
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    36
      those revisions. If only one revision is specified then that revision is
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    37
      compared to the working directory, and, when no revisions are specified,
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    38
      the working directory files are compared to its parent.
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    39
  
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    40
  options:
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    41
  
15145
ff26712a0c50 help: use RST to format option lists
Matt Mackall <mpm@selenic.com>
parents: 14024
diff changeset
    42
   -o --option OPT [+]      pass option to comparison program
ff26712a0c50 help: use RST to format option lists
Matt Mackall <mpm@selenic.com>
parents: 14024
diff changeset
    43
   -r --rev REV [+]         revision
ff26712a0c50 help: use RST to format option lists
Matt Mackall <mpm@selenic.com>
parents: 14024
diff changeset
    44
   -c --change REV          change made by revision
ff26712a0c50 help: use RST to format option lists
Matt Mackall <mpm@selenic.com>
parents: 14024
diff changeset
    45
   -I --include PATTERN [+] include names matching the given patterns
ff26712a0c50 help: use RST to format option lists
Matt Mackall <mpm@selenic.com>
parents: 14024
diff changeset
    46
   -X --exclude PATTERN [+] exclude names matching the given patterns
12304
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    47
  
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    48
  [+] marked option can be specified multiple times
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    49
  
17837
b623e323c561 help: indicate help omitting if help document is not fully displayed
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16899
diff changeset
    50
  use "hg -v help falabala" to show the global options
2906
453097750fbf extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    51
12304
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    52
  $ hg ci -d '0 0' -mtest1
2906
453097750fbf extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    53
12304
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    54
  $ echo b >> a
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    55
  $ hg ci -d '1 0' -mtest2
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    56
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    57
Should diff cloned files directly:
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    58
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    59
  $ hg falabala -r 0:1
13762
3740792dbe51 test-extdiff: fix 5c0e1222e7c0 temporary dir output
Patrick Mezard <pmezard@gmail.com>
parents: 13660
diff changeset
    60
  diffing */extdiff.*/a.8a5febb7f867/a a.34eed99112ab/a (glob)
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12304
diff changeset
    61
  [1]
12304
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    62
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    63
Test diff during merge:
2906
453097750fbf extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    64
12304
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    65
  $ hg update -C 0
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    66
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    67
  $ echo c >> c
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    68
  $ hg add c
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    69
  $ hg ci -m "new branch" -d '1 0'
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    70
  created new head
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    71
  $ hg merge 1
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    72
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    73
  (branch merge, don't forget to commit)
2906
453097750fbf extdiff: fix bugs. add test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    74
12304
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    75
Should diff cloned file against wc file:
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    76
12587
e3247ceaca5e tests: removed test names in tests
Erik Zielke <ez@aragost.com>
parents: 12346
diff changeset
    77
  $ hg falabala
13762
3740792dbe51 test-extdiff: fix 5c0e1222e7c0 temporary dir output
Patrick Mezard <pmezard@gmail.com>
parents: 13660
diff changeset
    78
  diffing */extdiff.*/a.2a13a4d2da36/a */a/a (glob)
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12304
diff changeset
    79
  [1]
12304
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    80
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    81
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    82
Test --change option:
3330
49966b5ab16f fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 2990
diff changeset
    83
12304
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    84
  $ hg ci -d '2 0' -mtest3
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    85
  $ hg falabala -c 1
13762
3740792dbe51 test-extdiff: fix 5c0e1222e7c0 temporary dir output
Patrick Mezard <pmezard@gmail.com>
parents: 13660
diff changeset
    86
  diffing */extdiff.*/a.8a5febb7f867/a a.34eed99112ab/a (glob)
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12304
diff changeset
    87
  [1]
12304
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    88
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    89
Check diff are made from the first parent:
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    90
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    91
  $ hg falabala -c 3 || echo "diff-like tools yield a non-zero exit code"
13762
3740792dbe51 test-extdiff: fix 5c0e1222e7c0 temporary dir output
Patrick Mezard <pmezard@gmail.com>
parents: 13660
diff changeset
    92
  diffing */extdiff.*/a.2a13a4d2da36/a a.46c0e4daeb72/a (glob)
12304
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    93
  diff-like tools yield a non-zero exit code
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    94
16899
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 15442
diff changeset
    95
#if execbit
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 15442
diff changeset
    96
12304
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    97
Test extdiff of multiple files in tmp dir:
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    98
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
    99
  $ hg update -C 0 > /dev/null
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   100
  $ echo changed > a
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   101
  $ echo changed > b
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   102
  $ chmod +x b
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   103
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   104
Diff in working directory, before:
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   105
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   106
  $ hg diff --git
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   107
  diff --git a/a b/a
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   108
  --- a/a
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   109
  +++ b/a
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   110
  @@ -1,1 +1,1 @@
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   111
  -a
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   112
  +changed
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   113
  diff --git a/b b/b
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   114
  old mode 100644
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   115
  new mode 100755
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   116
  --- a/b
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   117
  +++ b/b
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   118
  @@ -1,1 +1,1 @@
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   119
  -b
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   120
  +changed
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   121
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   122
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   123
Edit with extdiff -p:
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   124
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   125
Prepare custom diff/edit tool:
8065
66d0a03d3afc extdiff: preserve execute-bit across copies (issue1562)
Patrick Mezard <pmezard@gmail.com>
parents: 7758
diff changeset
   126
12304
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   127
  $ cat > 'diff tool.py' << EOT
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   128
  > #!/usr/bin/env python
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   129
  > import time
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   130
  > time.sleep(1) # avoid unchanged-timestamp problems
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   131
  > file('a/a', 'ab').write('edited\n')
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   132
  > file('a/b', 'ab').write('edited\n')
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   133
  > EOT
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   134
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   135
  $ chmod +x 'diff tool.py'
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   136
12328
b63f6422d2a7 tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
   137
will change to /tmp/extdiff.TMP and populate directories a.TMP and a
b63f6422d2a7 tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
   138
and start tool
b63f6422d2a7 tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
   139
12304
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   140
  $ hg extdiff -p "`pwd`/diff tool.py"
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12304
diff changeset
   141
  [1]
12304
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   142
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   143
Diff in working directory, after:
9956
6045a8c4dbbc extdiff: respect --option in command aliases (issue949)
Sune Foldager <cryo@cyanite.org>
parents: 8212
diff changeset
   144
12304
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   145
  $ hg diff --git
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   146
  diff --git a/a b/a
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   147
  --- a/a
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   148
  +++ b/a
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   149
  @@ -1,1 +1,2 @@
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   150
  -a
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   151
  +changed
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   152
  +edited
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   153
  diff --git a/b b/b
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   154
  old mode 100644
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   155
  new mode 100755
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   156
  --- a/b
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   157
  +++ b/b
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   158
  @@ -1,1 +1,2 @@
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   159
  -b
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   160
  +changed
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   161
  +edited
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   162
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   163
Test extdiff with --option:
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   164
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   165
  $ hg extdiff -p echo -o this -c 1
13762
3740792dbe51 test-extdiff: fix 5c0e1222e7c0 temporary dir output
Patrick Mezard <pmezard@gmail.com>
parents: 13660
diff changeset
   166
  this */extdiff.*/a.8a5febb7f867/a a.34eed99112ab/a (glob)
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12304
diff changeset
   167
  [1]
12304
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   168
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   169
  $ hg falabala -o this -c 1
13762
3740792dbe51 test-extdiff: fix 5c0e1222e7c0 temporary dir output
Patrick Mezard <pmezard@gmail.com>
parents: 13660
diff changeset
   170
  diffing this */extdiff.*/a.8a5febb7f867/a a.34eed99112ab/a (glob)
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12304
diff changeset
   171
  [1]
12304
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   172
13660
a56c1b2bff18 Updating hgext.extdiff to use revsets
David Wolever <david@wolever.net>
parents: 12640
diff changeset
   173
Test with revsets:
a56c1b2bff18 Updating hgext.extdiff to use revsets
David Wolever <david@wolever.net>
parents: 12640
diff changeset
   174
a56c1b2bff18 Updating hgext.extdiff to use revsets
David Wolever <david@wolever.net>
parents: 12640
diff changeset
   175
  $ hg extdif -p echo -c "rev(1)"
13762
3740792dbe51 test-extdiff: fix 5c0e1222e7c0 temporary dir output
Patrick Mezard <pmezard@gmail.com>
parents: 13660
diff changeset
   176
  */extdiff.*/a.8a5febb7f867/a a.34eed99112ab/a (glob)
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12304
diff changeset
   177
  [1]
13660
a56c1b2bff18 Updating hgext.extdiff to use revsets
David Wolever <david@wolever.net>
parents: 12640
diff changeset
   178
a56c1b2bff18 Updating hgext.extdiff to use revsets
David Wolever <david@wolever.net>
parents: 12640
diff changeset
   179
  $ hg extdif -p echo -r "0::1"
13762
3740792dbe51 test-extdiff: fix 5c0e1222e7c0 temporary dir output
Patrick Mezard <pmezard@gmail.com>
parents: 13660
diff changeset
   180
  */extdiff.*/a.8a5febb7f867/a a.34eed99112ab/a (glob)
13660
a56c1b2bff18 Updating hgext.extdiff to use revsets
David Wolever <david@wolever.net>
parents: 12640
diff changeset
   181
  [1]
14024
92b768e9f80c merge with stable
Thomas Arendsen Hein <thomas@intevation.de>
parents: 13762 14021
diff changeset
   182
14021
3eb632d9cf42 extdiff: fix broken symlinks handling (issue1909)
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   183
  $ cd ..
12304
41dd368b6fe8 tests: unify test-extdiff
Adrian Buehlmann <adrian@cadifra.com>
parents: 10775
diff changeset
   184
16899
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 15442
diff changeset
   185
#endif
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 15442
diff changeset
   186
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 15442
diff changeset
   187
#if symlink
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 15442
diff changeset
   188
14024
92b768e9f80c merge with stable
Thomas Arendsen Hein <thomas@intevation.de>
parents: 13762 14021
diff changeset
   189
Test symlinks handling (issue1909)
92b768e9f80c merge with stable
Thomas Arendsen Hein <thomas@intevation.de>
parents: 13762 14021
diff changeset
   190
14021
3eb632d9cf42 extdiff: fix broken symlinks handling (issue1909)
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   191
  $ hg init testsymlinks
3eb632d9cf42 extdiff: fix broken symlinks handling (issue1909)
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   192
  $ cd testsymlinks
3eb632d9cf42 extdiff: fix broken symlinks handling (issue1909)
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   193
  $ echo a > a
3eb632d9cf42 extdiff: fix broken symlinks handling (issue1909)
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   194
  $ hg ci -Am adda
3eb632d9cf42 extdiff: fix broken symlinks handling (issue1909)
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   195
  adding a
3eb632d9cf42 extdiff: fix broken symlinks handling (issue1909)
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   196
  $ echo a >> a
3eb632d9cf42 extdiff: fix broken symlinks handling (issue1909)
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   197
  $ ln -s missing linka
3eb632d9cf42 extdiff: fix broken symlinks handling (issue1909)
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   198
  $ hg add linka
3eb632d9cf42 extdiff: fix broken symlinks handling (issue1909)
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   199
  $ hg falabala -r 0 --traceback
3eb632d9cf42 extdiff: fix broken symlinks handling (issue1909)
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   200
  diffing testsymlinks.07f494440405 testsymlinks
3eb632d9cf42 extdiff: fix broken symlinks handling (issue1909)
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   201
  [1]
3eb632d9cf42 extdiff: fix broken symlinks handling (issue1909)
Patrick Mezard <pmezard@gmail.com>
parents: 12640
diff changeset
   202
  $ cd ..
16899
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 15442
diff changeset
   203
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 15442
diff changeset
   204
#endif