- if hasattr(reply, 'retval') and reply.retval != expected_retval:
- msg = "API call failed, expected retval == %d, got %s" % (
- expected_retval, repr(reply))
- self.test_class.logger.info(msg)
- raise Exception(msg)
+ if self._expect_api_retval == self._negative:
+ if hasattr(reply, 'retval') and reply.retval >= 0:
+ msg = "API call passed unexpectedly: expected negative "\
+ "return value instead of %d in %s" % \
+ (reply.retval, repr(reply))
+ self.test_class.logger.info(msg)
+ raise Exception(msg)
+ elif self._expect_api_retval == self._zero:
+ if hasattr(reply, 'retval') and reply.retval != expected_retval:
+ msg = "API call failed, expected zero return value instead "\
+ "of %d in %s" % (expected_retval, repr(reply))
+ self.test_class.logger.info(msg)
+ raise Exception(msg)
+ else:
+ raise Exception("Internal error, unexpected value for "
+ "self._expect_api_retval %s" %
+ self._expect_api_retval)