view tests/test-status-inprocess.py @ 52991:d7174b43f3e6

typing: fix the signature of `treemanifest.fastdelta()` We're still missing a few explicit bits of Protocol subclassing, and pytype found this when the subclassing is applied. So fix this first.
author Matt Harbison <matt_harbison@yahoo.com>
date Tue, 17 Dec 2024 19:29:08 -0500
parents f8f14e6d032b
children
line wrap: on
line source

#!/usr/bin/env python3

import sys

from mercurial import (
    commands,
    localrepo,
    ui as uimod,
)

print_ = print


def print(*args, **kwargs):
    """print() wrapper that flushes stdout buffers to avoid py3 buffer issues

    We could also just write directly to sys.stdout.buffer the way the
    ui object will, but this was easier for porting the test.
    """
    print_(*args, **kwargs)
    sys.stdout.flush()


u = uimod.ui.load()

print('% creating repo')
repo = localrepo.instance(u, b'.', create=True)

f = open('test.py', 'w')
try:
    f.write('foo\n')
finally:
    f.close

print('% add and commit')
commands.add(u, repo, b'test.py')
commands.commit(u, repo, message=b'*')
commands.status(u, repo, clean=True)


print('% change')
f = open('test.py', 'w')
try:
    f.write('bar\n')
finally:
    f.close()

# this would return clean instead of changed before the fix
commands.status(u, repo, clean=True, modified=True)