Changeset View
Changeset View
Standalone View
Standalone View
contrib/buildbot/test/test_phabricator.py
Show First 20 Lines • Show All 423 Lines • ▼ Show 20 Lines | def test_set_text_panel_content(self): | ||||
# Happy path | # Happy path | ||||
call_set_text_panel_content() | call_set_text_panel_content() | ||||
# Error | # Error | ||||
self.phab.dashboard.panel.edit.return_value["error"] = "You shall not pass !" | self.phab.dashboard.panel.edit.return_value["error"] = "You shall not pass !" | ||||
with self.assertRaisesRegex(AssertionError, "Failed to edit panel"): | with self.assertRaisesRegex(AssertionError, "Failed to edit panel"): | ||||
call_set_text_panel_content() | call_set_text_panel_content() | ||||
def test_get_object_token(self): | |||||
user_PHID = "PHID-USER-foobarbaz" | |||||
self.phab.user.whoami.return_value = { | |||||
"phid": user_PHID, | |||||
} | |||||
object_PHID = "PHID-DREV-abcdef" | |||||
def assert_token_given_called(): | |||||
self.phab.token.given.assert_called_with( | |||||
authorPHIDs=[user_PHID], | |||||
objectPHIDs=[object_PHID], | |||||
tokenPHIDs=[], | |||||
) | |||||
# There is no token for this object | |||||
self.phab.token.given.return_value = [] | |||||
token = self.phab.get_object_token(object_PHID) | |||||
assert_token_given_called() | |||||
self.assertEqual(token, "") | |||||
# There is exactly 1 token for this object | |||||
self.phab.token.given.return_value = [ | |||||
{ | |||||
"authorPHID": user_PHID, | |||||
"objectPHID": object_PHID, | |||||
"tokenPHID": "PHID-TOKN-like-1", | |||||
"dateCreated": 0, | |||||
}, | |||||
] | |||||
token = self.phab.get_object_token(object_PHID) | |||||
assert_token_given_called() | |||||
self.assertEqual(token, "PHID-TOKN-like-1") | |||||
# If there is more than a single token only the first one is returned | |||||
self.phab.token.given.return_value = [ | |||||
{ | |||||
"authorPHID": user_PHID, | |||||
"objectPHID": object_PHID, | |||||
"tokenPHID": "PHID-TOKN-like-1", | |||||
"dateCreated": 0, | |||||
}, | |||||
{ | |||||
"authorPHID": user_PHID, | |||||
"objectPHID": object_PHID, | |||||
"tokenPHID": "PHID-TOKN-like-2", | |||||
"dateCreated": 1, | |||||
}, | |||||
] | |||||
token = self.phab.get_object_token(object_PHID) | |||||
assert_token_given_called() | |||||
self.assertEqual(token, "PHID-TOKN-like-1") | |||||
def test_set_object_token(self): | |||||
object_PHID = "PHID-DREV-abcdef" | |||||
def assert_token_give_called(token_PHID): | |||||
self.phab.token.give.assert_called_with( | |||||
objectPHID=object_PHID, | |||||
tokenPHID=token_PHID, | |||||
) | |||||
# Rescind any previoulsy awarded token | |||||
self.phab.set_object_token(object_PHID) | |||||
assert_token_give_called("") | |||||
token_PHID = "PHID-TOKN-like-1" | |||||
self.phab.set_object_token(object_PHID, token_PHID) | |||||
assert_token_give_called(token_PHID) | |||||
if __name__ == '__main__': | if __name__ == '__main__': | ||||
unittest.main() | unittest.main() |