def test_sanction_handler(self): if not self.kind: return approval_token = self.sanction.approval_state[self.user._id]['approval_token'] handler = TokenHandler.from_string(approval_token) with mock_auth(self.user): with mock.patch('osf.utils.tokens.handlers.{0}_handler'.format(self.kind)) as mock_handler: handler.to_response() mock_handler.assert_called_with('approve', self.reg, self.reg.registered_from)
def test_sanction_handler_no_sanction(self): if not self.kind: return approval_token = self.sanction.approval_state[self.user._id]['approval_token'] handler = TokenHandler.from_string(approval_token) self.Model.delete(self.sanction) with mock_auth(self.user): try: handler.to_response() except HTTPError as e: assert_equal(e.code, http.BAD_REQUEST) assert_equal(e.data['message_long'], NO_SANCTION_MSG.format(self.Model.DISPLAY_NAME))
def test_sanction_handler(self): if not self.kind: return approval_token = self.sanction.approval_state[ self.user._id]['approval_token'] handler = TokenHandler.from_string(approval_token) with mock_auth(self.user): with mock.patch('osf.utils.tokens.handlers.{0}_handler'.format( self.kind)) as mock_handler: handler.to_response() mock_handler.assert_called_with('approve', self.reg, self.reg.registered_from)
def test_sanction_handler_sanction_rejected(self): if not self.kind: return approval_token = self.sanction.approval_state[self.user._id]['approval_token'] handler = TokenHandler.from_string(approval_token) self.sanction.state = Sanction.REJECTED self.sanction.save() with mock_auth(self.user): try: handler.to_response() except HTTPError as e: assert_equal(e.code, http.GONE if self.kind in ['embargo', 'registration_approval'] else http.BAD_REQUEST) assert_equal(e.data['message_long'], REJECTED_MSG.format(self.sanction.DISPLAY_NAME))
def test_sanction_handler_no_sanction(self): if not self.kind: return approval_token = self.sanction.approval_state[ self.user._id]['approval_token'] handler = TokenHandler.from_string(approval_token) self.Model.delete(self.sanction) with mock_auth(self.user): try: handler.to_response() except HTTPError as e: assert_equal(e.code, http.BAD_REQUEST) assert_equal(e.data['message_long'], NO_SANCTION_MSG.format(self.Model.DISPLAY_NAME))
def test_sanction_handler_sanction_approved(self): if not self.kind: return approval_token = self.sanction.approval_state[ self.user._id]['approval_token'] handler = TokenHandler.from_string(approval_token) self.sanction.state = Sanction.APPROVED self.sanction.save() with mock_auth(self.user): try: handler.to_response() except HTTPError as e: assert_equal( e.code, http.BAD_REQUEST if self.kind in ['embargo', 'registration_approval'] else http.GONE) assert_equal(e.data['message_long'], APPROVED_MSG.format(self.sanction.DISPLAY_NAME))
def test_from_string(self): token = TokenHandler.from_string(self.encoded_token) assert_equal(token.encoded_token, self.encoded_token) assert_equal(token.payload, self.payload)