comparison test/rest_common.py @ 5708:ad786c394788

Add another test case: change protected attribute using patch_attribute.
author John Rouillard <rouilj@ieee.org>
date Sat, 13 Apr 2019 12:45:36 -0400
parents f9a762678af6
children 0b79bfcb3312
comparison
equal deleted inserted replaced
5707:f9a762678af6 5708:ad786c394788
1470 type(expected['error']['msg'])) 1470 type(expected['error']['msg']))
1471 self.assertEqual(str(results['error']['msg']), 1471 self.assertEqual(str(results['error']['msg']),
1472 str(expected['error']['msg'])) 1472 str(expected['error']['msg']))
1473 self.assertEqual(self.dummy_client.response_code, 400) 1473 self.assertEqual(self.dummy_client.response_code, 400)
1474 1474
1475 # try to set a protected prop using patch_attribute. It should
1476 # fail with a 405 bad/unsupported method.
1477 etag = calculate_etag(self.db.issue.getnode(issue_id))
1478 form = cgi.FieldStorage()
1479 form.list = [
1480 cgi.MiniFieldStorage('@op', 'replace'),
1481 cgi.MiniFieldStorage('data', '2'),
1482 cgi.MiniFieldStorage('@etag', etag)
1483 ]
1484 results = self.server.patch_attribute('issue', issue_id, 'creator',
1485 form)
1486 expected= {'error': {'status': 405,
1487 'msg': AttributeError("Attribute 'creator' can not be updated for class issue.",)}}
1488 print(results)
1489 self.assertEqual(results['error']['status'],
1490 expected['error']['status'])
1491 self.assertEqual(type(results['error']['msg']),
1492 type(expected['error']['msg']))
1493 self.assertEqual(str(results['error']['msg']),
1494 str(expected['error']['msg']))
1495 self.assertEqual(self.dummy_client.response_code, 405)
1496
1475 def testPatchRemoveAll(self): 1497 def testPatchRemoveAll(self):
1476 """ 1498 """
1477 Test Patch Action 'Remove' 1499 Test Patch Action 'Remove'
1478 """ 1500 """
1479 # create a new issue with userid 1 and 2 in the nosy list 1501 # create a new issue with userid 1 and 2 in the nosy list

Roundup Issue Tracker: http://roundup-tracker.org/