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()
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
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
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()
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')
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)
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)