review/tests/test_init.py @ 789e5765c9ff
Start adding some documentation to the internals of the API.
I also managed to sneak a doctest in there which found a bug.
The bug is now fixed.
Awesome.
author |
Steve Losh <steve@stevelosh.com> |
date |
Wed, 07 Oct 2009 23:38:30 -0400 |
parents |
6d90ef243069 |
children |
8b8dee73f936 |
from nose import *
from util import *
from .. import messages
import os
from mercurial import util as hgutil
@with_setup(setup_sandbox, teardown_sandbox)
def test_init():
sandbox = get_sandbox_repo()
output = review(init=True)
assert messages.INIT_SUCCESS in output
assert '.hgreview' not in sandbox['tip']
assert os.path.exists('.hgreview')
assert os.path.isdir('.review')
assert get_datastore_repo('.review')
with open('.hgreview', 'r') as hgrf:
hgr = hgrf.read()
assert 'local = .review' in hgr
assert 'remote = ../sandbox-review' in hgr
@with_setup(setup_sandbox, teardown_sandbox)
def test_init_with_local_path():
sandbox = get_sandbox_repo()
output = review(init=True, local_path='codereview')
assert messages.INIT_SUCCESS in output
assert '.hgreview' not in sandbox['tip']
assert os.path.exists('.hgreview')
assert os.path.isdir('codereview')
assert get_datastore_repo('codereview')
with open('.hgreview', 'r') as hgrf:
hgr = hgrf.read()
assert 'local = codereview' in hgr
assert 'remote = ../sandbox-review' in hgr
@with_setup(setup_sandbox, teardown_sandbox)
def test_init_with_remote_path():
sandbox = get_sandbox_repo()
output = review(init=True, remote_path='../code-review')
assert messages.INIT_SUCCESS in output
assert '.hgreview' not in sandbox['tip']
assert os.path.exists('.hgreview')
assert os.path.isdir('.review')
assert get_datastore_repo('.review')
with open('.hgreview', 'r') as hgrf:
hgr = hgrf.read()
assert 'local = .review' in hgr
assert 'remote = ../code-review' in hgr
@with_setup(setup_sandbox, teardown_sandbox)
def test_init_with_both_paths():
sandbox = get_sandbox_repo()
output = review(init=True, local_path='codereview', remote_path='../code-review')
assert messages.INIT_SUCCESS in output
assert '.hgreview' not in sandbox['tip']
assert os.path.exists('.hgreview')
assert os.path.isdir('codereview')
assert get_datastore_repo('codereview')
with open('.hgreview', 'r') as hgrf:
hgr = hgrf.read()
assert 'local = codereview' in hgr
assert 'remote = ../code-review' in hgr
@with_setup(setup_sandbox, teardown_sandbox)
def test_init_twice():
sandbox = get_sandbox_repo()
review(init=True)
try:
review(init=True)
except hgutil.Abort, e:
error = str(e)
assert messages.INIT_EXISTS_UNCOMMITTED in error
else:
assert False, 'The correct error message was not printed.'