view tests/test-bdiff @ 500:ebc4714a7632

[PATCH] Clean up destination directory if a clone fails. -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 [PATCH] Clean up destination directory if a clone fails. From: Bryan O'Sullivan <bos@serpentine.com> On Mon, 2005-06-27 at 16:27 +0800, Soh Tk-r28629 wrote: > Hg clone left the dest directory if the source isn't valid. > I think it should either validate the source before mkdir, or do a > rmdir to clean it up. Good suggestion, thanks. As validating the source in advance isn't really practical, I opted for the latter. manifest hash: 1508afddd2402142f9d8b2387652d4cb28ccc1f5 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.0 (GNU/Linux) iD8DBQFCwRGPywK+sNU5EO8RApBOAJ9Fj22MP3pYJhxWsj8BYbcgWzIOKwCff9yC lX87RrDKicM1W61lBpQl20w= =efck -----END PGP SIGNATURE-----
author mpm@selenic.com
date Tue, 28 Jun 2005 00:59:59 -0800
parents 8b067bde6679
children ec85f9e6f3b1 8f5637f0a0c0 0902ffece4b4
line wrap: on
line source

#!/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"