Exemple #1
0
 def test_init_no_error(self):
     """
     Given I have a valid callback payload
     When I initiate a Repo
     Then no errors are raised
     """
     cb = MockCallback()
     payload = cb.payload()
     # we require construction without exception
     try:
         repo = gnome.gh.Repo(payload['repository']['full_name'])
         was_error = False
     except:
         was_error = True
     self.assertFalse(was_error)
Exemple #2
0
 def test_heisenmockbug_weirdness(self):
     """
     Don't ask.
     """
     repo = gnome.gh.repo_from_callback(MockCallback())
     repo._milestones = (MockFooMilestoneWrapper(),)
     # 'foo' != 'bar'
     self.assertFalse(repo.get_milestone('bar'))
Exemple #3
0
 def test_false_if_milestone_not_exists(self):
     """
     Given a milestone does not exist
     When I call repo.milestone_exists
     Then False is returned
     """
     repo = gnome.gh.repo_from_callback(MockCallback())
     repo._milestones = (MockFooMilestoneWrapper(),)
     self.assertFalse(repo.milestone_exists('bar'))
Exemple #4
0
 def test_true_if_milestone_exists(self):
     """
     Given a milestone exists
     When I call repo.milestone_exists
     Then True is returned
     """
     repo = gnome.gh.repo_from_callback(MockCallback())
     repo._milestones = (MockFooMilestoneWrapper(),)
     self.assertTrue(repo.milestone_exists('foo'))
Exemple #5
0
 def test_returns_milestone_if_exists(self):
     """
     Given a milestone exists,
     when I call repo.get_milestone on it's name
     then not None is returned
     """
     repo = gnome.gh.repo_from_callback(MockCallback())
     repo._milestones = (MockFooMilestoneWrapper(),)
     found = repo.get_milestone('foo')
     self.assertTrue(found)
Exemple #6
0
 def test_returns_none_if_not_exists(self):
     """
     Given a milestone does not exist
     When I call repo.get_milestone on it's name
     Then None is returned
     """
     repo = gnome.gh.repo_from_callback(MockCallback())
     repo._milestones = (MockFooMilestoneWrapper(),)
     found = repo.get_milestone('bar')  # not 'foo'
     self.assertFalse(found)
Exemple #7
0
 def test_false_if_invalid_input(self):
     ce = MockCallback()
     cfg = util.Config(ce)
     for yml in BAD_SAMPLE_YAML:
         def mock_get_yaml():
             return yml
         cfg.get_yaml = mock_get_yaml
         self.assertFalse(
             cfg.yaml_is_valid(),
             "found the following yaml valid\n{}".format(yml))
Exemple #8
0
 def test_does_nothig_if_it_exists(self):
     """
     Given the milestone exists
     When I call repo.ensure_milestone_exists
     Then no new milestone is created
     """
     repo = gnome.gh.repo_from_callback(MockCallback())
     repo.milestone_exists = MagicMock(return_value=True)
     repo.create_milestone = MagicMock()
     repo.ensure_milestone_exists('foo')
     repo.create_milestone.assert_not_called()
Exemple #9
0
 def test_creates_milestone_if_not_exist(self):
     """
     Given the milestone does not exist
     When I call repo.ensure_milestone_exists
     Then a new milestone is created
     """
     repo = gnome.gh.repo_from_callback(MockCallback())
     repo.milestone_exists = MagicMock(return_value=False)
     repo.create_milestone = MagicMock()
     repo.ensure_milestone_exists('foo')
     repo.create_milestone.assert_called()
Exemple #10
0
 def test_create_with_defaults_if_not_exist(self):
     """
     Given a milestone does not exist
     When I call repo.create_milestone
     Then the milestone is created
     """
     repo = gnome.gh.repo_from_callback(MockCallback())
     repo._milestones = (MockFooMilestoneWrapper(),)
     create_milestone_mock = MagicMock()
     repo._repo.create_milestone = create_milestone_mock
     repo.create_milestone('bar')
     create_milestone_mock.assert_called()
Exemple #11
0
    def test_repo_exists_then_not_created(self):
        repo = gnome.gh.repo_from_callback(MockCallback())
        gh_issue = MagicMock()
        #gh_issue.milestone = False
        repo.milestone_exists = MagicMock(return_value=True)
        repo.create_milestone = MagicMock()
        repo.get_milestone = MagicMock()

        i = gnome.gh.Issue(repo, gh_issue)
        i.move_to_milestone('x')

        repo.create_milestone.assert_not_called()
Exemple #12
0
    def test_no_extranious_tickets_returned(self):
        repo = gnome.gh.repo_from_callback(MockCallback())
        ghm = MockMilestoneFoo()
        m = gnome.gh.Milestone(repo, ghm)
        m.repo._repo.get_issues = MagicMock(
            return_value=MockMilestoneFoo.EXPECTED_TICKETS)
        found = []
        for t in m.open_tickets():
            found.append(t._issue)
        expected = MockMilestoneFoo.EXPECTED_TICKETS

        for t in found:
            self.assertTrue(t in expected)
Exemple #13
0
 def test_init(self):
     """
     Given I have a valid callback
     When I initiate an Issue
     Then no errors are raised
     """
     repo = gnome.gh.repo_from_callback(MockCallback())
     gh_issue = MagicMock()
     try:
         i = gnome.gh.Issue(repo, gh_issue)
         was_error = False
     except:
         was_error = True
     self.assertFalse(was_error)
Exemple #14
0
 def test_config_no_exceptions_getting_yaml(self):
     try:
         ce = MockCallback()
         cfg = util.Config(ce)
         init_raised = False
         try:
             yml = cfg.get_yaml()
             yml_raised = False
         except:
             yml_raised =True
     except:
         init_raised = True
     self.assertFalse(init_raised, "Config.__init__ raised an exception")
     self.assertFalse(yml_raised, "Config.get_yml raised an exception")
Exemple #15
0
    def test_do_nothing_if_already_exists(self):
        """
        Given a milestone,
        when I call repo.create_milestone;
        idempotency.
        """
        # I call that Haiku "then nothing happens"

        repo = gnome.gh.repo_from_callback(MockCallback())
        repo._milestones = (MockFooMilestoneWrapper(),)
        create_milestone_mock = MagicMock()
        repo._repo.create_milestone = create_milestone_mock
        repo.milestone_exists = MagicMock(return_value=True)
        repo.create_milestone('foo')
        repo._repo.create_milestone.assert_not_called()
Exemple #16
0
 def test_repo_validation(self):
     """
     Given I have a valid callback payload
     When I initiate a Milestone
     Then no errors are raised
     """
     repo = gnome.gh.repo_from_callback(MockCallback())
     repo._repo.create_milestone = MagicMock()
     gh_milestone = MockMilestoneFoo()
     try:
         mlstn = gnome.gh.Milestone(repo, gh_milestone)
         was_error = False
     except:
         was_error = True
     self.assertFalse(was_error)
Exemple #17
0
    def test_set_date_if_none(self):
        """
        Given a milestone has no due date
        When I call repo.ensure_milestone_has_due_date
        Then the due date is updated as specified
        """
        DATE = '2012-10-09T23:39:01Z'
        repo = gnome.gh.repo_from_callback(MockCallback())
        repo.milestone_exists = MagicMock(return_value=True)
        mm = gnome.gh.Milestone('some/repo', '_milestone')
        mm.get_due_date = MagicMock(return_value=None)
        mm.set_due_date = MagicMock()
        repo.get_milestone = MagicMock(return_value=mm)

        repo.ensure_milestone_has_due_date('foo', DATE)
        mm.set_due_date.assert_called_with(DATE)
Exemple #18
0
    def test_do_nothing_if_date_OK(self):
        """
        Given a malestone already has a specified due date
        When I call repo.ensure_milestone_has_due_date
        Then the due date is not updated
        """
        DATE =  '2012-10-09T23:39:01Z'
        repo = gnome.gh.repo_from_callback(MockCallback())
        repo.milestone_exists = MagicMock(return_value=True)
        mm = gnome.gh.Milestone('some/repo', '_milestone')
        mm.get_due_date = MagicMock(return_value=DATE)
        mm.set_due_date = MagicMock()
        repo.get_milestone = MagicMock(return_value=mm)

        repo.ensure_milestone_has_due_date('foo', DATE)
        mm.set_due_date.assert_not_called()
Exemple #19
0
 def __init__(self):
     self._milestone = MockMilestoneFoo()
     self.repo = gnome.gh.repo_from_callback(MockCallback())
     self.repo._repo.get_issues = MagicMock(
         return_val=self._milestone.EXPECTED_TICKETS)
Exemple #20
0
 def test_false_if_no_milestone(self):
     repo = gnome.gh.repo_from_callback(MockCallback())
     gh_issue = MagicMock()
     gh_issue.milestone = False
     i = gnome.gh.Issue(repo, gh_issue)
     self.assertFalse(i.has_milestone())
Exemple #21
0
 def test_true_if_has_milestone(self):
     repo = gnome.gh.repo_from_callback(MockCallback())
     gh_issue = MagicMock()
     gh_issue.milestone = MagicMock()
     i = gnome.gh.Issue(repo, gh_issue)
     self.assertTrue(i.has_milestone())