def test_release__not_on_develop_branch(self):
     with self.temporary_directory_context():
         self.projector("repository init a.b.c none short long")
         self.projector("devenv build --no-scripts")
         repository = LocalRepository(curdir)
         repository.checkout("master")
         with self.assertRaises(SystemExit):
             self.projector("version release 1.2.3 --no-fetch --no-upload --no-push-changes")
Exemple #2
0
 def test_release__not_on_develop_branch(self):
     with self.temporary_directory_context():
         self.projector("repository init a.b.c none short long")
         self.projector("devenv build --no-scripts")
         repository = LocalRepository(curdir)
         repository.checkout("master")
         with self.assertRaises(SystemExit):
             self.projector("version release 1.2.3 --no-fetch --no-upload --no-push-changes")
 def test_release__master_diverged(self):
     with self.temporary_directory_context():
         self.projector("repository init a.b.c none short long")
         self.projector("devenv build --no-scripts")
         repository = LocalRepository(curdir)
         repository.checkout("master")
         repository.commit("empty commit", allowEmpty=True)
         repository.checkout("develop")
         with self.assertRaises(SystemExit):
             self.projector("version release 1.2.3 --no-fetch --no-upload --no-push-changes")
Exemple #4
0
 def test_release__master_diverged(self):
     with self.temporary_directory_context():
         self.projector("repository init a.b.c none short long")
         self.projector("devenv build --no-scripts")
         repository = LocalRepository(curdir)
         repository.checkout("master")
         repository.commit("empty commit", allowEmpty=True)
         repository.checkout("develop")
         with self.assertRaises(SystemExit):
             self.projector("version release 1.2.3 --no-fetch --no-upload --no-push-changes")
 def test_local_behind_origin__no_fetch(self):
     from os import curdir
     from os.path import abspath, basename
     from infi.projector.helper.utils import chdir
     with self.temporary_directory_context():
         self.projector("repository init a.b.c none short long")
         self.projector("devenv build --no-scripts")
         origin = abspath(curdir)
         with self.temporary_directory_context():
             self.projector("repository clone {}".format(origin))
             with chdir(basename(origin)):
                 self.projector("devenv build --no-scripts")
                 with chdir(origin):
                     repository = LocalRepository(curdir)
                     repository.checkout("master")
                     repository.commit("empty commit", allowEmpty=True)
                 self.projector("version release 1.2.3 --no-fetch --no-upload  --no-push-changes")
Exemple #6
0
def revert_if_failed(keep_leftovers):
    from gitpy import LocalRepository
    from os import curdir
    repository = LocalRepository(curdir)
    ops = RevertIfFailedOperations(repository)
    before = ops.get_status()
    try:
        yield
    except:
        if keep_leftovers:
            raise
        repository.checkout('develop')
        now = ops.get_status()
        ops.delete_new_tags(before, now)
        ops.delete_new_branches(before, now)
        ops.reset_master_and_develop(before, now)
        raise
Exemple #7
0
def revert_if_failed(keep_leftovers):
    from gitpy import LocalRepository
    from os import curdir
    repository = LocalRepository(curdir)
    ops = RevertIfFailedOperations(repository)
    before = ops.get_status()
    try:
        yield
    except:
        if keep_leftovers:
            raise
        repository.checkout('develop')
        now = ops.get_status()
        ops.delete_new_tags(before, now)
        ops.delete_new_branches(before, now)
        ops.reset_master_and_develop(before, now)
        raise
Exemple #8
0
 def test_local_behind_origin__no_fetch(self):
     from os import curdir
     from os.path import abspath, basename
     from infi.projector.helper.utils import chdir
     with self.temporary_directory_context():
         self.projector("repository init a.b.c none short long")
         self.projector("devenv build --no-scripts")
         origin = abspath(curdir)
         with self.temporary_directory_context():
             self.projector("repository clone {}".format(origin))
             with chdir(basename(origin)):
                 self.projector("devenv build --no-scripts")
                 with chdir(origin):
                     repository = LocalRepository(curdir)
                     repository.checkout("master")
                     repository.commit("empty commit", allowEmpty=True)
                 self.projector("version release 1.2.3 --no-fetch --no-upload  --no-push-changes")
 def test_local_behind_origin(self):
     from os import curdir
     from os.path import abspath, basename
     from infi.projector.helper.utils import chdir
     if is_windows:
         raise SkipTest("skipping test on windows")
     with self.temporary_directory_context():
         self.projector("repository init a.b.c none short long")
         self.projector("devenv build --no-scripts --no-readline")
         origin = abspath(curdir)
         with self.temporary_directory_context():
             self.projector("repository clone {}".format(origin))
             with chdir(basename(origin)):
                 self.projector("devenv build --no-scripts --no-readline")
                 with chdir(origin):
                     repository = LocalRepository(curdir)
                     repository.checkout("master")
                     repository.commit("empty commit", allowEmpty=True)
                 with self.assertRaises(SystemExit):
                     self.projector("version release 1.2.3 --no-upload --no-push-changes")
 def test_local_behind_origin(self):
     from os import curdir
     from os.path import abspath, basename
     from infi.projector.helper.utils import chdir
     if is_windows:
         raise SkipTest("skipping test on windows")
     with self.temporary_directory_context():
         self.projector("repository init a.b.c none short long")
         self.projector("devenv build --no-scripts --no-readline")
         origin = abspath(curdir)
         with self.temporary_directory_context():
             self.projector("repository clone {}".format(origin))
             with chdir(basename(origin)):
                 self.projector("devenv build --no-scripts --no-readline")
                 with chdir(origin):
                     repository = LocalRepository(curdir)
                     repository.checkout("master")
                     repository.commit("empty commit", allowEmpty=True)
                 with self.assertRaises(SystemExit):
                     self.projector(
                         "version release 1.2.3 --no-upload --no-push-changes"
                     )