Ejemplo n.º 1
0
 def test_create_new_feature_branch(self):
     repo = create_git_repo(self)
     gitflow = GitFlow(repo).init()
     mgr = FeatureBranchManager(gitflow)
     self.assertEqual(0, len(mgr.list()))
     new_branch = mgr.create('foo')
     self.assertEqual(1, len(mgr.list()))
     self.assertEqual('feature/foo', mgr.list()[0].name)
     self.assertEqual(new_branch.commit,
             gitflow.repo.branches['develop'].commit)
Ejemplo n.º 2
0
 def test_create_new_feature_branch(self):
     repo = create_git_repo(self)
     gitflow = GitFlow(repo).init()
     mgr = FeatureBranchManager(gitflow)
     self.assertEqual(0, len(mgr.list()))
     new_branch = mgr.create('foo')
     self.assertEqual(1, len(mgr.list()))
     self.assertEqual('feature/foo', mgr.list()[0].name)
     self.assertEqual(new_branch.commit,
                      gitflow.repo.branches['develop'].commit)
Ejemplo n.º 3
0
    def test_delete_feature_without_commits(self):
        gitflow = GitFlow(self.repo)
        mgr = FeatureBranchManager(gitflow)

        self.assertEquals(2, len(mgr.list()))
        mgr.create('foo')
        gitflow.develop().checkout()
        self.assertEquals(3, len(mgr.list()))
        mgr.delete('foo')
        self.assertEquals(2, len(mgr.list()))
        self.assertNotIn('feat/foo', [b.name for b in self.repo.branches])
Ejemplo n.º 4
0
    def test_delete_feature_without_commits(self):
        gitflow = GitFlow(self.repo)
        mgr = FeatureBranchManager(gitflow)

        self.assertEquals(2, len(mgr.list()))
        mgr.create('foo')
        gitflow.develop().checkout()
        self.assertEquals(3, len(mgr.list()))
        mgr.delete('foo')
        self.assertEquals(2, len(mgr.list()))
        self.assertNotIn('feat/foo', [b.name for b in self.repo.branches])
Ejemplo n.º 5
0
    def test_delete_feature_with_commits_forcefully(self):
        gitflow = GitFlow(self.repo)
        mgr = FeatureBranchManager(gitflow)

        self.assertEquals(2, len(mgr.list()))
        mgr.create('foo')
        fake_commit(self.repo, 'A commit on the feature branch.', append=False)
        gitflow.develop().checkout()
        self.assertEquals(3, len(mgr.list()))
        mgr.delete('foo', force=True)
        self.assertEquals(2, len(mgr.list()))
        self.assertNotIn('feat/foo', [b.name for b in self.repo.branches])
Ejemplo n.º 6
0
    def test_delete_feature_with_commits_raises_error(self):
        gitflow = GitFlow(self.repo)
        mgr = FeatureBranchManager(gitflow)

        self.assertEquals(2, len(mgr.list()))
        mgr.create('foo')
        fake_commit(self.repo, 'A commit on the feature branch.', append=False)
        gitflow.develop().checkout()
        self.assertEquals(3, len(mgr.list()))
        self.assertRaisesRegexp(GitCommandError,
                'The branch .* is not fully merged',
                mgr.delete, 'foo')
Ejemplo n.º 7
0
    def test_delete_feature_with_commits_raises_error(self):
        gitflow = GitFlow(self.repo)
        mgr = FeatureBranchManager(gitflow)

        self.assertEquals(2, len(mgr.list()))
        mgr.create('foo')
        fake_commit(self.repo, 'A commit on the feature branch.', append=False)
        gitflow.develop().checkout()
        self.assertEquals(3, len(mgr.list()))
        self.assertRaisesRegexp(GitCommandError,
                                'The branch .* is not fully merged',
                                mgr.delete, 'foo')
Ejemplo n.º 8
0
    def test_delete_feature_with_commits_forcefully(self):
        gitflow = GitFlow(self.repo)
        mgr = FeatureBranchManager(gitflow)

        self.assertEquals(2, len(mgr.list()))
        mgr.create('foo')
        fake_commit(self.repo, 'A commit on the feature branch.', append=False)
        gitflow.develop().checkout()
        self.assertEquals(3, len(mgr.list()))
        mgr.delete('foo', force=True)
        self.assertEquals(2, len(mgr.list()))
        self.assertNotIn('feat/foo', [b.name for b in self.repo.branches])
Ejemplo n.º 9
0
    def test_delete_already_merged_feature(self):
        gitflow = GitFlow(self.repo)
        mgr = FeatureBranchManager(gitflow)

        self.assertEquals(2, len(mgr.list()))
        mgr.create('foo')
        fake_commit(self.repo, 'Dummy commit #1')
        fake_commit(self.repo, 'Dummy commit #2')
        mgr.merge('foo', 'devel')

        self.assertEquals(3, len(mgr.list()))
        mgr.delete('foo')
        self.assertEquals(2, len(mgr.list()))
        self.assertNotIn('feat/foo', [b.name for b in mgr.list()])
Ejemplo n.º 10
0
    def test_delete_already_merged_feature(self):
        gitflow = GitFlow(self.repo)
        mgr = FeatureBranchManager(gitflow)

        self.assertEquals(2, len(mgr.list()))
        mgr.create('foo')
        fake_commit(self.repo, 'Dummy commit #1')
        fake_commit(self.repo, 'Dummy commit #2')
        mgr.merge('foo', 'devel')

        self.assertEquals(3, len(mgr.list()))
        mgr.delete('foo')
        self.assertEquals(2, len(mgr.list()))
        self.assertNotIn('feat/foo', [b.name for b in mgr.list()])
Ejemplo n.º 11
0
 def test_create_new_feature_branch_non_default_prefix(self):
     gitflow = GitFlow(self.repo).init()
     mgr = FeatureBranchManager(gitflow)
     new_branch = mgr.create('foo')
     self.assertEqual(new_branch.name, 'feat/foo')
     self.assertIn('feat/foo', [b.name for b in mgr.list()])
     self.assertEqual(new_branch.commit,
                      gitflow.repo.branches['devel'].commit)
Ejemplo n.º 12
0
 def test_create_new_feature_branch_non_default_prefix(self):
     gitflow = GitFlow(self.repo).init()
     mgr = FeatureBranchManager(gitflow)
     new_branch = mgr.create('foo')
     self.assertEqual(new_branch.name, 'feat/foo')
     self.assertIn('feat/foo', [b.name for b in mgr.list()])
     self.assertEqual(new_branch.commit,
             gitflow.repo.branches['devel'].commit)
Ejemplo n.º 13
0
 def test_list_without_matching_prefix(self):
     gitflow = GitFlow()
     mgr = FeatureBranchManager(gitflow, 'fb-')
     expected = []
     self.assertItemsEqual(expected, [b.name for b in mgr.list()])
Ejemplo n.º 14
0
 def test_list(self):
     gitflow = GitFlow()
     mgr = FeatureBranchManager(gitflow)
     expected = ['feat/even', 'feat/recursion']
     self.assertItemsEqual(expected, [b.name for b in mgr.list()])
Ejemplo n.º 15
0
 def test_list(self):
     gitflow = GitFlow()
     mgr = FeatureBranchManager(gitflow)
     expected = ['feat/even', 'feat/recursion']
     self.assertItemsEqual(expected, [b.name for b in mgr.list()])
Ejemplo n.º 16
0
 def test_list_without_matching_prefix(self):
     gitflow = GitFlow()
     mgr = FeatureBranchManager(gitflow, 'fb-')
     expected = []
     self.assertItemsEqual(expected, [b.name for b in mgr.list()])
Ejemplo n.º 17
0
 def test_empty_repo_has_no_features(self):
     repo = create_git_repo(self)
     gitflow = GitFlow(repo)
     mgr = FeatureBranchManager(gitflow)
     self.assertItemsEqual([], mgr.list())
Ejemplo n.º 18
0
 def test_empty_repo_has_no_features(self):
     repo = create_git_repo(self)
     gitflow = GitFlow(repo)
     mgr = FeatureBranchManager(gitflow)
     self.assertItemsEqual([], mgr.list())