def setUp(self):
        jira_backend = 'waldur_mastermind.support.backend.atlassian:ServiceDeskBackend'
        settings.WALDUR_SUPPORT['ENABLED'] = True
        settings.WALDUR_SUPPORT['ACTIVE_BACKEND'] = jira_backend
        self.issue = factories.IssueFactory()

        backend_issue_raw = json.loads(load_resource('jira_issue_raw.json'))
        self.backend_issue = jira.resources.Issue({'server': 'example.com'}, None, backend_issue_raw)

        backend_attachment_raw = json.loads(load_resource('jira_attachment_raw.json'))
        self.backend_attachment = jira.resources.Attachment({'server': 'example.com'}, None, backend_attachment_raw)
        self.backend_issue.fields.attachment.append(self.backend_attachment)

        self.backend = ServiceDeskBackend()

        path = mock.patch.object(ServiceDeskBackend, 'get_backend_issue',
                                 new=mock.Mock(return_value=self.backend_issue))
        path.start()

        path = mock.patch.object(ServiceDeskBackend, 'get_backend_attachment',
                                 new=mock.Mock(return_value=self.backend_attachment))
        path.start()

        GIF = 'R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7'
        file_content = six.BytesIO(GIF.decode('base64'))
        path = mock.patch.object(AttachmentSynchronizer, '_download_file',
                                 new=mock.Mock(return_value=file_content))
        path.start()
Esempio n. 2
0
    def _mock_jira(self, old_jira=False, user=None):
        mock.patch.stopall()
        mock_patch = mock.patch('waldur_jira.backend.JIRA')
        self.mock_jira = mock_patch.start()
        self.mock_jira().fields.return_value = json.loads(
            load_resource('jira_fields.json'))
        issue_raw = json.loads(load_resource('jira_issue_raw.json'))
        mock_backend_issue = Issue({'server': ''}, None, raw=issue_raw)
        mock_backend_issue.update = mock.MagicMock()
        self.mock_jira(
        ).create_customer_request.return_value = mock_backend_issue
        self.mock_jira().waldur_create_customer_request.return_value = (
            mock_backend_issue)

        self.mock_jira().create_issue.return_value = mock_backend_issue

        mock_backend_users = [
            User(
                {'server': ''},
                None,
                raw={
                    'key': 'user_1',
                    'active': True,
                    'name': user.email if user else '*****@*****.**',
                },
            )
        ]
        if old_jira:
            self.mock_jira().search_users.return_value = mock_backend_users
        else:
            self.mock_jira(
            ).waldur_search_users.return_value = mock_backend_users
Esempio n. 3
0
    def _mock_jira(self):
        mock.patch.stopall()
        mock_patch = mock.patch('waldur_jira.backend.JIRA')
        self.mock_jira = mock_patch.start()
        self.mock_jira().fields.return_value = json.loads(load_resource('jira_fields.json'))
        issue_raw = json.loads(load_resource('jira_issue_raw.json'))
        mock_backend_issue = Issue({'server': ''}, None, raw=issue_raw)
        mock_backend_issue.update = mock.MagicMock()
        self.mock_jira().create_customer_request.return_value = mock_backend_issue

        self.mock_jira().create_issue.return_value = mock_backend_issue

        mock_backend_users = [User({'server': ''}, None, raw={'key': 'user_1', 'active': True})]
        self.mock_jira().search_users.return_value = mock_backend_users
Esempio n. 4
0
    def setUp(self):
        jira_backend = 'waldur_mastermind.support.backend.atlassian:ServiceDeskBackend'
        settings.WALDUR_SUPPORT['ENABLED'] = True
        settings.WALDUR_SUPPORT['ACTIVE_BACKEND'] = jira_backend
        self.comment = factories.CommentFactory()

        backend_comment_raw = json.loads(
            load_resource('jira_comment_raw.json'))
        self.backend_comment = jira.resources.Comment(
            {'server': 'example.com'}, None, backend_comment_raw)
        self.backend = ServiceDeskBackend()

        self.internal = {'value': {'internal': False}}
        path = mock.patch.object(
            ServiceDeskBackend,
            '_get_property',
            new=mock.Mock(return_value=self.internal),
        )
        path.start()

        path = mock.patch.object(
            ServiceDeskBackend,
            'get_backend_comment',
            new=mock.Mock(return_value=self.backend_comment),
        )
        path.start()
    def setUp(self):
        jira_backend = 'waldur_mastermind.support.backend.atlassian:ServiceDeskBackend'
        settings.WALDUR_SUPPORT['ENABLED'] = True
        settings.WALDUR_SUPPORT['ACTIVE_BACKEND'] = jira_backend
        settings.task_always_eager = True
        self.issue = factories.IssueFactory()

        backend_issue_raw = json.loads(load_resource('jira_issue_raw.json'))
        self.backend_issue = jira.resources.Issue({'server': 'example.com'}, None, backend_issue_raw)
        self.backend = ServiceDeskBackend()
        self.impact_field_id = 'customfield_10116'

        path = mock.patch.object(ServiceDeskBackend, 'get_backend_issue',
                                 new=mock.Mock(return_value=self.backend_issue))
        path.start()

        self.first_response_sla = timezone.now()
        path = mock.patch.object(ServiceDeskBackend, '_get_first_sla_field',
                                 new=mock.Mock(return_value=self.first_response_sla))
        path.start()

        def side_effect(arg):
            if arg == 'Impact':
                return self.impact_field_id

        path = mock.patch.object(ServiceDeskBackend, 'get_field_id_by_name',
                                 new=mock.Mock(side_effect=side_effect))
        path.start()
Esempio n. 6
0
 def test_of_author_when_create_comment_from_jira(self):
     issue = factories.IssueFactory()
     backend_comment_raw = json.loads(load_resource('jira_comment_raw.json'))
     self.backend_comment = jira.resources.Comment({'server': 'example.com'}, None, backend_comment_raw)
     self.mocked_jira.comment.return_value = self.backend_comment
     self.backend.create_comment_from_jira(issue, self.backend_comment.id)
     comment = models.Comment.objects.get(issue=issue)
     self.assertEqual(comment.author.backend_id, 'user')
Esempio n. 7
0
    def setUp(self):
        super(BaseBackendTest, self).setUp()

        self.fixture = fixtures.SupportFixture()
        self.backend = ServiceDeskBackend()

        jira_patcher = mock.patch('waldur_jira.backend.JIRA')
        self.mocked_jira = jira_patcher.start()()

        self.mocked_jira.fields.return_value = json.loads(load_resource('jira_fields.json'))

        mock_backend_users = [User({'server': ''}, None, raw={'key': 'user_1', 'active': True})]
        self.mocked_jira.search_users.return_value = mock_backend_users
    def setUp(self):
        self.issue = factories.IssueFactory()

        backend_issue_raw = json.loads(load_resource('jira_issue_raw.json'))
        self.backend_issue = jira.resources.Issue({'server': 'example.com'},
                                                  None, backend_issue_raw)

        self.impact_field_id = 'customfield_10116'
        self.first_response_sla = timezone.now()

        def side_effect(arg):
            if arg == 'Impact':
                return self.impact_field_id

        self.backend = ServiceDeskBackend()
        self.backend.get_backend_issue = mock.Mock(
            return_value=self.backend_issue)
        self.backend._get_first_sla_field = mock.Mock(
            return_value=self.first_response_sla)
        self.backend.get_field_id_by_name = mock.Mock(side_effect=side_effect)
Esempio n. 9
0
 def create_request(test, name, path):
     jira_request = json.loads(load_resource(path))
     jira_request['issue']['key'] = backend_id
     setattr(test, 'request_data_' + name, jira_request)