示例#1
0
 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)
示例#2
0
 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)
示例#3
0
 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)
示例#5
0
 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)