diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2019-04-29 11:54:04 +0200 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2019-04-29 11:54:04 +0200 |
commit | 7d597df5d7ad1d9dcf088b6cc3ddc6d78dd3360c (patch) | |
tree | 6169816bf5dce5add5658cfb30fcf1b7551489c0 /messagebus | |
parent | 79cde9a3bab5dddd5c806f501b92e30b14840f00 (diff) |
Test and error code categorization.
Diffstat (limited to 'messagebus')
-rw-r--r-- | messagebus/src/main/java/com/yahoo/messagebus/ErrorCode.java | 5 | ||||
-rwxr-xr-x | messagebus/src/test/java/com/yahoo/messagebus/ErrorTestCase.java | 36 |
2 files changed, 39 insertions, 2 deletions
diff --git a/messagebus/src/main/java/com/yahoo/messagebus/ErrorCode.java b/messagebus/src/main/java/com/yahoo/messagebus/ErrorCode.java index 7357f13ba15..460783457af 100644 --- a/messagebus/src/main/java/com/yahoo/messagebus/ErrorCode.java +++ b/messagebus/src/main/java/com/yahoo/messagebus/ErrorCode.java @@ -126,10 +126,11 @@ public final class ErrorCode { return code >= FATAL_ERROR; } public static boolean isTransient(int code) { - return code >= TRANSIENT_ERROR; + return (code >= TRANSIENT_ERROR) && (code < FATAL_ERROR); } public static boolean isMBusError(int code) { return ((code < APP_TRANSIENT_ERROR) && isTransient(code)) - || ((code < APP_FATAL_ERROR) && isFatal(code)); + || ((code < APP_FATAL_ERROR) && isFatal(code)) + || ((code < TRANSIENT_ERROR) && (code >= NONE)); } } diff --git a/messagebus/src/test/java/com/yahoo/messagebus/ErrorTestCase.java b/messagebus/src/test/java/com/yahoo/messagebus/ErrorTestCase.java index 805f743536e..271da8717bf 100755 --- a/messagebus/src/test/java/com/yahoo/messagebus/ErrorTestCase.java +++ b/messagebus/src/test/java/com/yahoo/messagebus/ErrorTestCase.java @@ -89,4 +89,40 @@ public class ErrorTestCase { src.destroy(); slobrok.stop(); } + @Test + public void testErrorCodeCategorization() { + assertTrue(ErrorCode.isFatal(ErrorCode.FATAL_ERROR)); + assertFalse(ErrorCode.isTransient(ErrorCode.FATAL_ERROR)); + assertTrue(ErrorCode.isMBusError(ErrorCode.FATAL_ERROR)); + + assertTrue(ErrorCode.isFatal(ErrorCode.APP_FATAL_ERROR)); + assertFalse(ErrorCode.isTransient(ErrorCode.APP_FATAL_ERROR)); + assertFalse(ErrorCode.isMBusError(ErrorCode.APP_FATAL_ERROR)); + + + assertFalse(ErrorCode.isFatal(ErrorCode.TRANSIENT_ERROR)); + assertTrue(ErrorCode.isTransient(ErrorCode.TRANSIENT_ERROR)); + assertTrue(ErrorCode.isMBusError(ErrorCode.TRANSIENT_ERROR)); + + assertFalse(ErrorCode.isFatal(ErrorCode.APP_TRANSIENT_ERROR)); + assertTrue(ErrorCode.isTransient(ErrorCode.APP_TRANSIENT_ERROR)); + assertFalse(ErrorCode.isMBusError(ErrorCode.APP_TRANSIENT_ERROR)); + + assertFalse(ErrorCode.isFatal(ErrorCode.APP_TRANSIENT_ERROR - 1)); + assertTrue(ErrorCode.isTransient(ErrorCode.APP_TRANSIENT_ERROR - 1)); + assertTrue(ErrorCode.isMBusError(ErrorCode.APP_TRANSIENT_ERROR - 1)); + + assertFalse(ErrorCode.isFatal(ErrorCode.FATAL_ERROR - 1)); + assertTrue(ErrorCode.isTransient(ErrorCode.FATAL_ERROR - 1)); + assertFalse(ErrorCode.isMBusError(ErrorCode.FATAL_ERROR - 1)); + + assertFalse(ErrorCode.isFatal(ErrorCode.TRANSIENT_ERROR - 1)); + assertFalse(ErrorCode.isTransient(ErrorCode.TRANSIENT_ERROR - 1)); + assertTrue(ErrorCode.isMBusError(ErrorCode.TRANSIENT_ERROR - 1)); + + assertFalse(ErrorCode.isFatal(ErrorCode.NONE)); + assertFalse(ErrorCode.isTransient(ErrorCode.NONE)); + assertTrue(ErrorCode.isMBusError(ErrorCode.NONE)); + + } } |