tests/test-bdiff
author Thomas Arendsen Hein <thomas@intevation.de>
Fri, 01 Jul 2005 07:22:27 +0100
changeset 544 3d4d5f2aba9a
parent 400 8b067bde6679
child 800 ec85f9e6f3b1
child 808 8f5637f0a0c0
child 814 0902ffece4b4
permissions -rwxr-xr-x
Remove bashisms and use /bin/sh instead of /bin/bash. -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Remove bashisms and use /bin/sh instead of /bin/bash. manifest hash: 25560e04ff8ac33a6d8b82d2328b4e90578bee4c -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (GNU/Linux) iD8DBQFCxOEjW7P1GVgWeRoRAm9XAJ9IjlbMerPYEhKQQu7Ufcm6630cDwCfdXJ3 865XH6YVMuCYNjf3eibwQaM= =r3gh -----END PGP SIGNATURE-----

#!/usr/bin/env python

import sys
from mercurial import bdiff, mpatch

def test1(a, b):
    d = bdiff.bdiff(a, b)
    c = a
    if d:
        c = mpatch.patches(a, [d])
    if c != b:
        print "***", `a`, `b`
        print "bad:"
        print `c`[:200]
        print `d`

def test(a, b):
    print "***", `a`, `b`
    test1(a, b)
    test1(b, a)

test("a\nc\n\n\n\n", "a\nb\n\n\n")
test("a\nb\nc\n", "a\nc\n")
test("", "")
test("a\nb\nc", "a\nb\nc")
test("a\nb\nc\nd\n", "a\nd\n")
test("a\nb\nc\nd\n", "a\nc\ne\n")
test("a\nb\nc\n", "a\nc\n")
test("a\n", "c\na\nb\n")
test("a\n", "")
test("a\n", "b\nc\n")
test("a\n", "c\na\n")
test("", "adjfkjdjksdhfksj")
test("", "ab")
test("", "abc")
test("a", "a")
test("ab", "ab")
test("abc", "abc")
test("a\n", "a\n")
test("a\nb", "a\nb")

print "done"