def testAnonymous_PutTemplate(self): self.SetCurrentUser('') with self.assertRaises(ValueError): report_template.PutTemplate('ex-id', 'foo', [testing_common.EXTERNAL_USER.email()], {}) self.assertEqual('external', ndb.Key('ReportTemplate', 'ex-id').get().name)
def testInternal_PutTemplate(self): self.SetCurrentUser(testing_common.INTERNAL_USER.email()) with self.assertRaises(ValueError): report_template.PutTemplate( None, 'Test:External', [testing_common.INTERNAL_USER.email()], {'rows': []}) with self.assertRaises(ValueError): report_template.PutTemplate( 'in-id', 'Test:External', [testing_common.INTERNAL_USER.email()], {'rows': []}) with self.assertRaises(ValueError): report_template.PutTemplate( 'invalid', 'bad', [testing_common.INTERNAL_USER.email()], {'rows': []}) with self.assertRaises(ValueError): report_template.PutTemplate( 'ex-id', 'bad', [testing_common.INTERNAL_USER.email()], {'rows': []}) self.assertEqual('external', ndb.Key('ReportTemplate', 'ex-id').get().name) with self.assertRaises(ValueError): report_template.PutTemplate( 584630894, 'bad', [testing_common.INTERNAL_USER.email()], {'rows': []}) report_template.PutTemplate( 'in-id', 'foo', [testing_common.INTERNAL_USER.email()], {'rows': []}) self.assertEqual('foo', ndb.Key('ReportTemplate', 'in-id').get().name)
def PrivilegedPost(self, *_): template = json.loads(self.request.get('template')) name = self.request.get('name', None) owners = self.request.get('owners', None) if template is None or name is None or owners is None: raise api_request_handler.BadRequestError owners = owners.split(',') template_id = self.request.get('id', None) try: report_template.PutTemplate(template_id, name, owners, template) except ValueError: raise api_request_handler.BadRequestError return report_template.List()
def testPutTemplate_External(self): self.SetCurrentUser(testing_common.EXTERNAL_USER.email()) report_template.PutTemplate( None, 'foo', [testing_common.EXTERNAL_USER.email()], { 'rows': [ { 'testSuites': ['externalsuite'], 'bots': ['master:externalbot'], 'measurement': 'measure', 'testCases': [], }, ], }) template = report_template.ReportTemplate.query( report_template.ReportTemplate.name == 'foo').get() self.assertFalse(template.internal_only)
def testPutTemplate_InternalOnly(self): self.SetCurrentUser(testing_common.INTERNAL_USER.email()) test = graph_data.TestMetadata( has_rows=True, internal_only=True, id='master/internalbot/internalsuite/measure', units='units') test.put() report_template.PutTemplate( None, 'foo', [testing_common.INTERNAL_USER.email()], { 'rows': [ { 'testSuites': ['internalsuite'], 'bots': ['master:internalbot'], 'measurement': 'measure', 'testCases': [], }, ], }) template = report_template.ReportTemplate.query( report_template.ReportTemplate.name == 'foo').get() self.assertTrue(template.internal_only)