tests/test-import-context.t
author Levi Bard <levi@unity3d.com>
Sat, 07 Jan 2012 19:11:31 +0100
changeset 15795 8bed8551d535
parent 12825 61f48581d8ef
child 16913 f2719b387380
permissions -rw-r--r--
largefiles: add precommit hook to check for inappropriate locking This tests for inappropriate locking (issue3182) by running hg status as a precommit hook.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12825
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     1
Test applying context diffs
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     2
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     3
  $ cat > writepatterns.py <<EOF
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     4
  > import sys
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     5
  > 
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     6
  > path = sys.argv[1]
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     7
  > lasteol = sys.argv[2] == '1'
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     8
  > patterns = sys.argv[3:]
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     9
  > 
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    10
  > fp = file(path, 'wb')
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    11
  > for i, pattern in enumerate(patterns):
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    12
  >     count = int(pattern[0:-1])
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    13
  >     char = pattern[-1] + '\n'
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    14
  >     if not lasteol and i == len(patterns) - 1:
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    15
  >         fp.write((char*count)[:-1])
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    16
  >     else:
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    17
  >         fp.write(char*count)
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    18
  > fp.close()
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    19
  > EOF
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    20
  $ cat > cat.py <<EOF
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    21
  > import sys
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    22
  > sys.stdout.write(repr(file(sys.argv[1], 'rb').read()) + '\n')
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    23
  > EOF
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    24
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    25
Initialize the test repository
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    26
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    27
  $ hg init repo
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    28
  $ cd repo
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    29
  $ python ../writepatterns.py a 0 5A 1B 5C 1D
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    30
  $ python ../writepatterns.py b 1 1A 1B
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    31
  $ python ../writepatterns.py c 1 5A
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    32
  $ python ../writepatterns.py d 1 5A 1B
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    33
  $ hg add
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    34
  adding a
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    35
  adding b
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    36
  adding c
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    37
  adding d
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    38
  $ hg ci -m addfiles
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    39
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    40
Add file, missing a last end of line
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    41
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    42
  $ hg import --no-commit - <<EOF
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    43
  > *** /dev/null	2010-10-16 18:05:49.000000000 +0200
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    44
  > --- b/newnoeol	2010-10-16 18:23:26.000000000 +0200
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    45
  > ***************
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    46
  > *** 0 ****
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    47
  > --- 1,2 ----
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    48
  > + a
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    49
  > + b
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    50
  > \ No newline at end of file
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    51
  > *** a/a	Sat Oct 16 16:35:51 2010
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    52
  > --- b/a	Sat Oct 16 16:35:51 2010
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    53
  > ***************
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    54
  > *** 3,12 ****
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    55
  >   A
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    56
  >   A
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    57
  >   A
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    58
  > ! B
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    59
  >   C
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    60
  >   C
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    61
  >   C
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    62
  >   C
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    63
  >   C
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    64
  > ! D
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    65
  > \ No newline at end of file
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    66
  > --- 3,13 ----
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    67
  >   A
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    68
  >   A
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    69
  >   A
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    70
  > ! E
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    71
  >   C
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    72
  >   C
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    73
  >   C
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    74
  >   C
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    75
  >   C
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    76
  > ! F
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    77
  > ! F
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    78
  > 
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    79
  > *** a/b	2010-10-16 18:40:38.000000000 +0200
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    80
  > --- /dev/null	2010-10-16 18:05:49.000000000 +0200
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    81
  > ***************
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    82
  > *** 1,2 ****
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    83
  > - A
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    84
  > - B
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    85
  > --- 0 ----
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    86
  > *** a/c	Sat Oct 16 21:34:26 2010
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    87
  > --- b/c	Sat Oct 16 21:34:27 2010
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    88
  > ***************
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    89
  > *** 3,5 ****
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    90
  > --- 3,7 ----
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    91
  >   A
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    92
  >   A
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    93
  >   A
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    94
  > + B
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    95
  > + B
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    96
  > *** a/d	Sat Oct 16 21:47:20 2010
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    97
  > --- b/d	Sat Oct 16 21:47:22 2010
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    98
  > ***************
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    99
  > *** 2,6 ****
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
   100
  >   A
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
   101
  >   A
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
   102
  >   A
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
   103
  > - A
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
   104
  > - B
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
   105
  > --- 2,4 ----
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
   106
  > EOF
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
   107
  applying patch from stdin
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
   108
  $ hg st
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
   109
  M a
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
   110
  M c
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
   111
  M d
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
   112
  A newnoeol
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
   113
  R b
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
   114
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
   115
What's in a
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
   116
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
   117
  $ python ../cat.py a
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
   118
  'A\nA\nA\nA\nA\nE\nC\nC\nC\nC\nC\nF\nF\n'
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
   119
  $ python ../cat.py newnoeol
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
   120
  'a\nb'
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
   121
  $ python ../cat.py c
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
   122
  'A\nA\nA\nA\nA\nB\nB\n'
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
   123
  $ python ../cat.py d
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
   124
  'A\nA\nA\nA\n'
61f48581d8ef Test applying context diffs
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
   125