summaryrefslogtreecommitdiffstats
path: root/v3po/vpp-translate-utils
diff options
context:
space:
mode:
Diffstat (limited to 'v3po/vpp-translate-utils')
-rw-r--r--v3po/vpp-translate-utils/src/main/java/io/fd/honeycomb/v3po/translate/v3po/util/TranslateUtils.java16
-rw-r--r--v3po/vpp-translate-utils/src/test/java/io/fd/honeycomb/v3po/translate/v3po/util/TranslateUtilsTest.java37
2 files changed, 40 insertions, 13 deletions
diff --git a/v3po/vpp-translate-utils/src/main/java/io/fd/honeycomb/v3po/translate/v3po/util/TranslateUtils.java b/v3po/vpp-translate-utils/src/main/java/io/fd/honeycomb/v3po/translate/v3po/util/TranslateUtils.java
index f14b2eb6d..b13dbb4fe 100644
--- a/v3po/vpp-translate-utils/src/main/java/io/fd/honeycomb/v3po/translate/v3po/util/TranslateUtils.java
+++ b/v3po/vpp-translate-utils/src/main/java/io/fd/honeycomb/v3po/translate/v3po/util/TranslateUtils.java
@@ -129,4 +129,20 @@ public final class TranslateUtils {
public static byte booleanToByte(@Nullable final Boolean value) {
return value != null && value ? (byte) 1 : (byte) 0;
}
+
+ /**
+ * Returns Boolean.TRUE if argument is 0, Boolean.FALSE otherwise.
+ * @param value byte value to be converted
+ * @return Boolean value
+ * @throws IllegalArgumentException if argument is neither 0 nor 1
+ */
+ @Nonnull
+ public static Boolean byteToBoolean(final byte value) {
+ if (value == 0) {
+ return Boolean.FALSE;
+ } else if (value == 1) {
+ return Boolean.TRUE;
+ }
+ throw new IllegalArgumentException(String.format("0 or 1 was expected but was %d", value));
+ }
}
diff --git a/v3po/vpp-translate-utils/src/test/java/io/fd/honeycomb/v3po/translate/v3po/util/TranslateUtilsTest.java b/v3po/vpp-translate-utils/src/test/java/io/fd/honeycomb/v3po/translate/v3po/util/TranslateUtilsTest.java
index a3c37bade..0a851e8c4 100644
--- a/v3po/vpp-translate-utils/src/test/java/io/fd/honeycomb/v3po/translate/v3po/util/TranslateUtilsTest.java
+++ b/v3po/vpp-translate-utils/src/test/java/io/fd/honeycomb/v3po/translate/v3po/util/TranslateUtilsTest.java
@@ -3,7 +3,6 @@ package io.fd.honeycomb.v3po.translate.v3po.util;
import static org.junit.Assert.assertArrayEquals;
import static org.junit.Assert.assertEquals;
-import io.fd.honeycomb.v3po.translate.v3po.util.TranslateUtils;
import org.junit.Test;
public class TranslateUtilsTest {
@@ -11,7 +10,7 @@ public class TranslateUtilsTest {
@Test
public void testToString() {
final byte[] expected = "test".getBytes();
- final byte[] cString = new byte[expected.length+10];
+ final byte[] cString = new byte[expected.length + 10];
System.arraycopy(expected, 0, cString, 0, expected.length);
final String jString = TranslateUtils.toString(cString);
assertArrayEquals(expected, jString.getBytes());
@@ -25,12 +24,12 @@ public class TranslateUtilsTest {
private void assertMac(final byte[] bytes) {
assertEquals(6, bytes.length);
- assertEquals((byte)0, bytes[0]);
- assertEquals((byte)255, bytes[1]);
- assertEquals((byte)127, bytes[2]);
- assertEquals((byte)21, bytes[3]);
- assertEquals((byte)94, bytes[4]);
- assertEquals((byte)169, bytes[5]);
+ assertEquals((byte) 0, bytes[0]);
+ assertEquals((byte) 255, bytes[1]);
+ assertEquals((byte) 127, bytes[2]);
+ assertEquals((byte) 21, bytes[3]);
+ assertEquals((byte) 94, bytes[4]);
+ assertEquals((byte) 169, bytes[5]);
}
@Test(expected = IllegalArgumentException.class)
@@ -54,9 +53,21 @@ public class TranslateUtilsTest {
TranslateUtils.parseMac("00:XX:7f:15:5e:77\"");
}
- public void testBooleanToByte() {
- assertEquals(0, TranslateUtils.booleanToByte(null));
- assertEquals(0, TranslateUtils.booleanToByte(false));
- assertEquals(1, TranslateUtils.booleanToByte(true));
- }
+ @Test
+ public void testBooleanToByte() {
+ assertEquals(0, TranslateUtils.booleanToByte(null));
+ assertEquals(0, TranslateUtils.booleanToByte(false));
+ assertEquals(1, TranslateUtils.booleanToByte(true));
+ }
+
+ @Test
+ public void testByteToBoolean() {
+ assertEquals(Boolean.FALSE, TranslateUtils.byteToBoolean((byte) 0));
+ assertEquals(Boolean.TRUE, TranslateUtils.byteToBoolean((byte) 1));
+ }
+
+ @Test(expected = IllegalArgumentException.class)
+ public void testByteToBooleanFailed() {
+ TranslateUtils.byteToBoolean((byte) 123);
+ }
} \ No newline at end of file