tests/test-merge-force.t
author Matt Mackall <mpm@selenic.com>
Sun, 23 Oct 2011 16:32:27 -0500
branchstable
changeset 15348 c681e478c429
parent 12316 4134686b83e1
child 15619 6c8573dd1b6b
permissions -rw-r--r--
windows: sanity-check symlink placeholders On Windows, we store symlinks as plain files with the link contents. Via user error or NFS/Samba assistance, these files often end up with 'normal' file contents. Committing these changes thus gives an invalid symlink that can't be checked out on Unix. Here we filter out any modified symlink placeholders that look suspicious when computing status: - more than 1K (looks more like a normal file) - contain NULs (not allowed on Unix, probably a binary) - contains \n (filenames can't contain \n, very unusual for symlinks, very common for files)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12256
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
     1
  $ hg init
6255
ae83d927c629 add a test for a375ffc2aa1b
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
     2
12256
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
     3
  $ echo a > a
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
     4
  $ hg ci -qAm 'add a'
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
     5
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
     6
  $ echo b > b
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
     7
  $ hg ci -qAm 'add b'
6255
ae83d927c629 add a test for a375ffc2aa1b
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
     8
12256
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
     9
  $ hg up -qC 0
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    10
  $ hg rm a
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    11
  $ hg ci -m 'rm a'
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    12
  created new head
6255
ae83d927c629 add a test for a375ffc2aa1b
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
    13
12256
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    14
  $ hg up -qC 1
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    15
  $ rm a
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    16
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    17
Local deleted a file, remote removed
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    18
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    19
Should fail, since there are deleted files:
6255
ae83d927c629 add a test for a375ffc2aa1b
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
    20
12256
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    21
  $ hg merge
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    22
  abort: outstanding uncommitted changes (use 'hg status' to list changes)
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12256
diff changeset
    23
  [255]
12256
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    24
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    25
Should succeed with --force:
6255
ae83d927c629 add a test for a375ffc2aa1b
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
    26
12256
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    27
  $ hg -v merge --force
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    28
  resolving manifests
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    29
  removing a
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    30
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    31
  (branch merge, don't forget to commit)
6255
ae83d927c629 add a test for a375ffc2aa1b
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
    32
12256
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    33
Should show 'a' as removed:
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    34
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    35
  $ hg status
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    36
  R a
6255
ae83d927c629 add a test for a375ffc2aa1b
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
    37
12256
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    38
  $ hg ci -m merge
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    39
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    40
Should not show 'a':
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    41
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    42
  $ hg manifest
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    43
  b
2a06cb547be8 tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents: 6256
diff changeset
    44