def test_send_log_start(self): """Test to ensure params are sent properly.""" self.mock.get_session_id.return_value = 'user:1234:sessionid' params = {'testcaseId': 123456, 'command': 'reproduce', 'buildType': 'chromium', 'current': True, 'disableGoma': True} stackdriver_logging.send_log(params) params['user'] = '******' params['sessionId'] = 'user:1234:sessionid' params['message'] = ('name started running reproduce with ' 'testcase=123456, build_type=chromium, current=True, ' 'and goma=disabled') structure = { 'logName': 'projects/clusterfuzz-tools/logs/client', 'resource': { 'type': 'project', 'labels': { 'project_id': 'clusterfuzz-tools'}}, 'entries': [{ 'jsonPayload': params, 'severity': 'INFO'}]} self.assert_exact_calls( (self.mock.ServiceAccountCredentials.from_json_keyfile_name .return_value.authorize.return_value.request), [mock.call( uri='https://logging.googleapis.com/v2/entries:write', method='POST', body=json.dumps(structure))])
def test_send_stacktrace(self): """Test to ensure stacktrace and params are sent properly.""" self.mock.get_session_id.return_value = 'user:1234:sessionid' params = { 'testcase_id': 123456, 'success': True, 'command': 'reproduce', 'build': 'chromium', 'current': True, 'disable_goma': True, 'enable_debug': True } stackdriver_logging.send_log(params, 'Stacktrace') params['user'] = '******' params['sessionId'] = 'user:1234:sessionid' params['message'] = ( 'name successfully finished (reproduce, 123456, current, debug).\n' 'Stacktrace') structure = { 'logName': 'projects/clusterfuzz-tools/logs/client', 'resource': { 'type': 'project', 'labels': { 'project_id': 'clusterfuzz-tools' } }, 'entries': [{ 'jsonPayload': params, 'severity': 'ERROR' }] } self.assert_exact_calls( (self.mock.ServiceAccountCredentials.from_json_keyfile_name. return_value.authorize.return_value.request), [ mock.call( uri='https://logging.googleapis.com/v2/entries:write', method='POST', body=json.dumps(structure)) ])