def test_fork(self): repo = HM.Repository(name='testrepo.hg', fs_path='/tmp/', url_path='/test/', tool='hg', status='creating') repo_path = pkg_resources.resource_filename('forgehg', 'tests/data/testrepo.hg') dirname = os.path.join(repo.fs_path, repo.name) if os.path.exists(dirname): shutil.rmtree(dirname) repo.init() repo._impl.clone_from(repo_path, copy_hooks=False) assert len(repo.log()) assert not os.path.exists('/tmp/testrepo.hg/.hg/external-changegroup') assert not os.path.exists('/tmp/testrepo.hg/.hg/nested/nested-file') assert os.path.exists('/tmp/testrepo.hg/.hg/hgrc') cp = ConfigParser() cp.read('/tmp/testrepo.hg/.hg/hgrc') assert not cp.has_section('other') assert cp.has_section('hooks') assert not cp.has_option('hooks', 'changegroup.external') assert not cp.has_option('hooks', 'commit') self.assertEquals( cp.get('hooks', 'changegroup.sourceforge'), 'curl -s http://localhost//auth/refresh_repo/p/test/src-hg/') assert not os.path.exists('/tmp/testrepo.hg/.hg/undo.branch') shutil.rmtree(dirname)
def test_init(self): repo = HM.Repository(name='testrepo.hg', fs_path='/tmp/', url_path='/test/', tool='hg', status='creating') dirname = os.path.join(repo.fs_path, repo.name) if os.path.exists(dirname): shutil.rmtree(dirname) repo.init() shutil.rmtree(dirname)
def setup_with_tools(self): setup_global_objects() h.set_context('test', 'src-hg', neighborhood='Projects') repo_dir = pkg_resources.resource_filename('forgehg', 'tests/data') self.repo = HM.Repository(name='testrepo.hg', fs_path=repo_dir, url_path='/test/', tool='hg', status='creating') self.repo.refresh() ThreadLocalORMSession.flush_all() ThreadLocalORMSession.close_all()
def test_clone(self): repo = HM.Repository( name='testrepo.hg', fs_path='/tmp/', url_path = '/test/', tool = 'hg', status = 'creating') repo_path = pkg_resources.resource_filename( 'forgehg', 'tests/data/testrepo.hg') dirname = os.path.join(repo.fs_path, repo.name) if os.path.exists(dirname): shutil.rmtree(dirname) repo.init() repo._impl.clone_from(repo_path) assert len(repo.log()) shutil.rmtree(dirname)
def test_clone(self): repo = HM.Repository(name='testrepo.hg', fs_path='/tmp/', url_path='/test/', tool='hg', status='creating') repo_path = pkg_resources.resource_filename('forgehg', 'tests/data/testrepo.hg') dirname = os.path.join(repo.fs_path, repo.name) if os.path.exists(dirname): shutil.rmtree(dirname) repo.init() repo._impl.clone_from(repo_path, copy_hooks=True) assert len(repo.log()) assert os.path.exists('/tmp/testrepo.hg/.hg/external-changegroup') assert os.access('/tmp/testrepo.hg/.hg/external-changegroup', os.X_OK) with open('/tmp/testrepo.hg/.hg/external-changegroup') as f: c = f.read() self.assertEqual(c, '#!/bin/bash\n' '\n' 'echo external-changegroup\n') assert os.path.exists('/tmp/testrepo.hg/.hg/nested/nested-file') assert os.access('/tmp/testrepo.hg/.hg/nested/nested-file', os.X_OK) with open('/tmp/testrepo.hg/.hg/nested/nested-file') as f: c = f.read() self.assertEqual(c, 'nested-file\n') assert os.path.exists('/tmp/testrepo.hg/.hg/hgrc') cp = ConfigParser() cp.read('/tmp/testrepo.hg/.hg/hgrc') assert cp.has_section('other') self.assertEquals(cp.get('other', 'custom'), 'custom value') assert cp.has_section('hooks') self.assertEquals( cp.get('hooks', 'changegroup.sourceforge'), 'curl -s http://localhost//auth/refresh_repo/p/test/src-hg/') self.assertEquals(cp.get('hooks', 'changegroup.external'), '.hg/external-changegroup') self.assertEquals(cp.get('hooks', 'commit'), 'python:hgext.notify.hook') assert not os.path.exists('/tmp/testrepo.hg/.hg/undo.branch') shutil.rmtree(dirname)