remove unsigned support
This commit is contained in:
@@ -8,113 +8,65 @@ import kotlin.test.assertEquals
|
||||
class ByteArrayConversionTest {
|
||||
@Test
|
||||
fun toInt() {
|
||||
val expected = 0x12345678
|
||||
val actual = arrayOf(
|
||||
byteArrayOf(0x12, 0x34, 0x56, 0x78).toInt(),
|
||||
byteArrayOf(0x78, 0x56, 0x34, 0x12).toInt(order = LITTLE_ENDIAN),
|
||||
)
|
||||
assertEquals(expected, actual[0])
|
||||
assertEquals(expected, actual[1])
|
||||
}
|
||||
|
||||
@Test
|
||||
fun toUInt() {
|
||||
val expected = 0x12345678U
|
||||
val actual = arrayOf(
|
||||
byteArrayOf(0x12, 0x34, 0x56, 0x78).toUInt(),
|
||||
byteArrayOf(0x78, 0x56, 0x34, 0x12).toUInt(order = LITTLE_ENDIAN),
|
||||
)
|
||||
assertEquals(expected, actual[0])
|
||||
assertEquals(expected, actual[1])
|
||||
}
|
||||
|
||||
@Test
|
||||
fun toIntArray() {
|
||||
val expected = intArrayOf(0x12345678, 0x78563412)
|
||||
val actual = arrayOf(
|
||||
byteArrayOf(
|
||||
0x12, 0x34, 0x56, 0x78,
|
||||
0x78, 0x56, 0x34, 0x12,
|
||||
).toIntArray(),
|
||||
byteArrayOf(
|
||||
0x78, 0x56, 0x34, 0x12,
|
||||
0x12, 0x34, 0x56, 0x78,
|
||||
).toIntArray(LITTLE_ENDIAN),
|
||||
)
|
||||
assertContentEquals(expected, actual[0])
|
||||
assertContentEquals(expected, actual[1])
|
||||
}
|
||||
|
||||
@Test
|
||||
fun toUIntArray() {
|
||||
val expected = uintArrayOf(0x12345678U, 0x78563412U)
|
||||
val actual = arrayOf(
|
||||
byteArrayOf(
|
||||
0x12, 0x34, 0x56, 0x78,
|
||||
0x78, 0x56, 0x34, 0x12,
|
||||
).toUIntArray(),
|
||||
byteArrayOf(
|
||||
0x78, 0x56, 0x34, 0x12,
|
||||
0x12, 0x34, 0x56, 0x78,
|
||||
).toUIntArray(LITTLE_ENDIAN),
|
||||
)
|
||||
assertContentEquals(expected, actual[0])
|
||||
assertContentEquals(expected, actual[1])
|
||||
val expected = 0x01234567
|
||||
run {
|
||||
val actual = byteArrayOf(0x01, 0x23, 0x45, 0x67).toInt()
|
||||
assertEquals(expected, actual)
|
||||
}
|
||||
run {
|
||||
val actual = byteArrayOf(0x67, 0x45, 0x23, 0x01).toInt(order = LITTLE_ENDIAN)
|
||||
assertEquals(expected, actual)
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
fun toLong() {
|
||||
val expected = 0x1234567878563412L
|
||||
val actual = arrayOf(
|
||||
byteArrayOf(0x12, 0x34, 0x56, 0x78, 0x78, 0x56, 0x34, 0x12).toLong(),
|
||||
byteArrayOf(0x12, 0x34, 0x56, 0x78, 0x78, 0x56, 0x34, 0x12).toLong(order = LITTLE_ENDIAN),
|
||||
)
|
||||
assertEquals(expected, actual[0])
|
||||
assertEquals(expected, actual[1])
|
||||
val expected = 0x0123456789abcdefL
|
||||
run {
|
||||
val actual = byteArrayOf(0x01, 0x23, 0x45, 0x67, -0x77, -0x55, -0x33, -0x11).toLong()
|
||||
assertEquals(expected, actual)
|
||||
}
|
||||
run {
|
||||
val actual = byteArrayOf(-0x11, -0x33, -0x55, -0x77, 0x67, 0x45, 0x23, 0x01).toLong(order = LITTLE_ENDIAN)
|
||||
assertEquals(expected, actual)
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
fun toULong() {
|
||||
val expected = 0x1234567878563412UL
|
||||
val actual = arrayOf(
|
||||
byteArrayOf(0x12, 0x34, 0x56, 0x78, 0x78, 0x56, 0x34, 0x12).toULong(),
|
||||
byteArrayOf(0x12, 0x34, 0x56, 0x78, 0x78, 0x56, 0x34, 0x12).toULong(order = LITTLE_ENDIAN),
|
||||
)
|
||||
assertEquals(expected, actual[0])
|
||||
assertEquals(expected, actual[1])
|
||||
fun toIntArray() {
|
||||
val expected = intArrayOf(0x01234567, 0x67452301)
|
||||
run {
|
||||
val actual = byteArrayOf(
|
||||
0x01, 0x23, 0x45, 0x67,
|
||||
0x67, 0x45, 0x23, 0x01,
|
||||
).toIntArray()
|
||||
assertContentEquals(expected, actual)
|
||||
}
|
||||
run {
|
||||
val actual = byteArrayOf(
|
||||
0x67, 0x45, 0x23, 0x01,
|
||||
0x01, 0x23, 0x45, 0x67,
|
||||
).toIntArray(order = LITTLE_ENDIAN)
|
||||
assertContentEquals(expected, actual)
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
fun toLongArray() {
|
||||
val expected = longArrayOf(0x1234567812345678L, 0x1234567812345678L)
|
||||
val actual = arrayOf(
|
||||
byteArrayOf(
|
||||
0x12, 0x34, 0x56, 0x78, 0x12, 0x34, 0x56, 0x78,
|
||||
0x12, 0x34, 0x56, 0x78, 0x12, 0x34, 0x56, 0x78,
|
||||
).toLongArray(),
|
||||
byteArrayOf(
|
||||
0x78, 0x56, 0x34, 0x12, 0x78, 0x56, 0x34, 0x12,
|
||||
0x78, 0x56, 0x34, 0x12, 0x78, 0x56, 0x34, 0x12,
|
||||
).toLongArray(LITTLE_ENDIAN),
|
||||
)
|
||||
assertContentEquals(expected, actual[0])
|
||||
assertContentEquals(expected, actual[1])
|
||||
}
|
||||
|
||||
@Test
|
||||
fun toULongArray() {
|
||||
val expected = ulongArrayOf(0x1234567812345678UL, 0x1234567812345678UL)
|
||||
val actual = arrayOf(
|
||||
byteArrayOf(
|
||||
0x12, 0x34, 0x56, 0x78, 0x12, 0x34, 0x56, 0x78,
|
||||
0x12, 0x34, 0x56, 0x78, 0x12, 0x34, 0x56, 0x78,
|
||||
).toULongArray(),
|
||||
byteArrayOf(
|
||||
0x78, 0x56, 0x34, 0x12, 0x78, 0x56, 0x34, 0x12,
|
||||
0x78, 0x56, 0x34, 0x12, 0x78, 0x56, 0x34, 0x12,
|
||||
).toULongArray(LITTLE_ENDIAN),
|
||||
)
|
||||
assertContentEquals(expected, actual[0])
|
||||
assertContentEquals(expected, actual[1])
|
||||
val expected = longArrayOf(0x0123456789abcdefL, -0x1032547698badcffL)
|
||||
run {
|
||||
val actual = byteArrayOf(
|
||||
0x01, 0x23, 0x45, 0x67, -0x77, -0x55, -0x33, -0x11,
|
||||
-0x11, -0x33, -0x55, -0x77, 0x67, 0x45, 0x23, 0x01,
|
||||
).toLongArray()
|
||||
assertContentEquals(expected, actual)
|
||||
}
|
||||
run {
|
||||
val actual = byteArrayOf(
|
||||
-0x11, -0x33, -0x55, -0x77, 0x67, 0x45, 0x23, 0x01,
|
||||
0x01, 0x23, 0x45, 0x67, -0x77, -0x55, -0x33, -0x11,
|
||||
).toLongArray(order = LITTLE_ENDIAN)
|
||||
assertContentEquals(expected, actual)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
package com.infendro.bytes.bytearray
|
||||
|
||||
import kotlin.test.Test
|
||||
import kotlin.test.assertContentEquals
|
||||
|
||||
class ByteArrayOperatorTest {
|
||||
@Test
|
||||
fun and() {
|
||||
val expected = byteArrayOf(0x18, 0x00)
|
||||
val actual = byteArrayOf(0x5C, 0x70) and byteArrayOf(0x3A, 0x0F)
|
||||
assertContentEquals(expected, actual)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun or() {
|
||||
val expected = byteArrayOf(0x7E, 0x7F)
|
||||
val actual = byteArrayOf(0x5C, 0x70) or byteArrayOf(0x3A, 0x0F)
|
||||
assertContentEquals(expected, actual)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun xor() {
|
||||
val expected = byteArrayOf(0x66, 0x7F)
|
||||
val actual = byteArrayOf(0x5C, 0x70) xor byteArrayOf(0x3A, 0x0F)
|
||||
assertContentEquals(expected, actual)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun not() {
|
||||
val expected = byteArrayOf(-0x01, -0x20)
|
||||
val actual = !byteArrayOf(0x00, 0x1F)
|
||||
assertContentEquals(expected, actual)
|
||||
}
|
||||
}
|
||||
@@ -1,65 +0,0 @@
|
||||
package com.infendro.bytes.bytearray
|
||||
|
||||
import kotlin.test.Test
|
||||
import kotlin.test.assertContentEquals
|
||||
import kotlin.test.assertFails
|
||||
|
||||
class ByteArrayOperatorsTest {
|
||||
@Test
|
||||
fun inv() {
|
||||
val expected = ubyteArrayOf(0xFFU, 0xE0U).asByteArray()
|
||||
val actual = byteArrayOf(0x00, 0x1F).inv()
|
||||
assertContentEquals(expected, actual)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun andSize() {
|
||||
assertFails {
|
||||
byteArrayOf() and byteArrayOf(0x00)
|
||||
}
|
||||
assertFails {
|
||||
byteArrayOf(0x00) and byteArrayOf()
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
fun and() {
|
||||
val expected = byteArrayOf(0x18, 0x00)
|
||||
val actual = byteArrayOf(0x5C, 0x70) and byteArrayOf(0x3A, 0x0F)
|
||||
assertContentEquals(expected, actual)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun orSize() {
|
||||
assertFails {
|
||||
byteArrayOf() or byteArrayOf(0x00)
|
||||
}
|
||||
assertFails {
|
||||
byteArrayOf(0x00) or byteArrayOf()
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
fun or() {
|
||||
val expected = byteArrayOf(0x7E, 0x7F)
|
||||
val actual = byteArrayOf(0x5C, 0x70) or byteArrayOf(0x3A, 0x0F)
|
||||
assertContentEquals(expected, actual)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun xorSize() {
|
||||
assertFails {
|
||||
byteArrayOf() xor byteArrayOf(0x00)
|
||||
}
|
||||
assertFails {
|
||||
byteArrayOf(0x00) xor byteArrayOf()
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
fun xor() {
|
||||
val expected = byteArrayOf(0x66, 0x7F)
|
||||
val actual = byteArrayOf(0x5C, 0x70) xor byteArrayOf(0x3A, 0x0F)
|
||||
assertContentEquals(expected, actual)
|
||||
}
|
||||
}
|
||||
@@ -7,31 +7,14 @@ import kotlin.test.assertContentEquals
|
||||
class IntConversionTest {
|
||||
@Test
|
||||
fun toByteArray() {
|
||||
val expected = arrayOf(
|
||||
byteArrayOf(0x12, 0x34, 0x56, 0x78),
|
||||
byteArrayOf(0x78, 0x56, 0x34, 0x12),
|
||||
)
|
||||
val actual = arrayOf(
|
||||
0x12345678.toByteArray(),
|
||||
0x12345678.toByteArray(LITTLE_ENDIAN),
|
||||
)
|
||||
for (i in 0..1) {
|
||||
assertContentEquals(expected[i], actual[i])
|
||||
val expected = byteArrayOf(0x01, 0x23, 0x45, 0x67)
|
||||
run {
|
||||
val actual = 0x01234567.toByteArray()
|
||||
assertContentEquals(expected, actual)
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
fun toUByteArray() {
|
||||
val expected = arrayOf(
|
||||
ubyteArrayOf(0x12U, 0x34U, 0x56U, 0x78U),
|
||||
ubyteArrayOf(0x78U, 0x56U, 0x34U, 0x12U),
|
||||
)
|
||||
val actual = arrayOf(
|
||||
0x12345678.toUByteArray(),
|
||||
0x12345678.toUByteArray(LITTLE_ENDIAN),
|
||||
)
|
||||
for (i in 0..1) {
|
||||
assertContentEquals(expected[i], actual[i])
|
||||
run {
|
||||
val actual = 0x67452301.toByteArray(LITTLE_ENDIAN)
|
||||
assertContentEquals(expected, actual)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,55 +7,17 @@ import kotlin.test.assertContentEquals
|
||||
class IntArrayConversionTest {
|
||||
@Test
|
||||
fun toByteArray() {
|
||||
val expected = arrayOf(
|
||||
byteArrayOf(
|
||||
0x12, 0x34, 0x56, 0x78,
|
||||
0x12, 0x34, 0x56, 0x78,
|
||||
),
|
||||
byteArrayOf(
|
||||
0x78, 0x56, 0x34, 0x12,
|
||||
0x78, 0x56, 0x34, 0x12,
|
||||
),
|
||||
val expected = byteArrayOf(
|
||||
0x01, 0x23, 0x45, 0x67,
|
||||
0x67, 0x45, 0x23, 0x01,
|
||||
)
|
||||
val actual = arrayOf(
|
||||
intArrayOf(
|
||||
0x12345678,
|
||||
0x12345678,
|
||||
).toByteArray(),
|
||||
intArrayOf(
|
||||
0x12345678,
|
||||
0x12345678,
|
||||
).toByteArray(LITTLE_ENDIAN),
|
||||
)
|
||||
for (i in 0..1) {
|
||||
assertContentEquals(expected[i], actual[i])
|
||||
run {
|
||||
val actual = intArrayOf(0x01234567, 0x67452301).toByteArray()
|
||||
assertContentEquals(expected, actual)
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
fun toUByteArray() {
|
||||
val expected = arrayOf(
|
||||
ubyteArrayOf(
|
||||
0x12U, 0x34U, 0x56U, 0x78U,
|
||||
0x12U, 0x34U, 0x56U, 0x78U,
|
||||
),
|
||||
ubyteArrayOf(
|
||||
0x78U, 0x56U, 0x34U, 0x12U,
|
||||
0x78U, 0x56U, 0x34U, 0x12U,
|
||||
),
|
||||
)
|
||||
val actual = arrayOf(
|
||||
intArrayOf(
|
||||
0x12345678,
|
||||
0x12345678,
|
||||
).toUByteArray(),
|
||||
intArrayOf(
|
||||
0x12345678,
|
||||
0x12345678,
|
||||
).toUByteArray(LITTLE_ENDIAN),
|
||||
)
|
||||
for (i in 0..1) {
|
||||
assertContentEquals(expected[i], actual[i])
|
||||
run {
|
||||
val actual = intArrayOf(0x67452301, 0x01234567).toByteArray(order = LITTLE_ENDIAN)
|
||||
assertContentEquals(expected, actual)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,31 +7,14 @@ import kotlin.test.assertContentEquals
|
||||
class LongConversionTest {
|
||||
@Test
|
||||
fun toByteArray() {
|
||||
val expected = arrayOf(
|
||||
byteArrayOf(0x12, 0x34, 0x56, 0x78, 0x12, 0x34, 0x56, 0x78),
|
||||
byteArrayOf(0x78, 0x56, 0x34, 0x12, 0x78, 0x56, 0x34, 0x12),
|
||||
)
|
||||
val actual = arrayOf(
|
||||
0x1234567812345678L.toByteArray(),
|
||||
0x1234567812345678L.toByteArray(LITTLE_ENDIAN),
|
||||
)
|
||||
for (i in 0..1) {
|
||||
assertContentEquals(expected[i], actual[i])
|
||||
val expected = byteArrayOf(0x01, 0x23, 0x45, 0x67, -0x77, -0x55, -0x33, -0x11)
|
||||
run {
|
||||
val actual = 0x0123456789abcdefL.toByteArray()
|
||||
assertContentEquals(expected, actual)
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
fun toUByteArray() {
|
||||
val expected = arrayOf(
|
||||
ubyteArrayOf(0x12U, 0x34U, 0x56U, 0x78U, 0x12U, 0x34U, 0x56U, 0x78U),
|
||||
ubyteArrayOf(0x78U, 0x56U, 0x34U, 0x12U, 0x78U, 0x56U, 0x34U, 0x12U),
|
||||
)
|
||||
val actual = arrayOf(
|
||||
0x1234567812345678L.toUByteArray(),
|
||||
0x1234567812345678L.toUByteArray(LITTLE_ENDIAN),
|
||||
)
|
||||
for (i in 0..1) {
|
||||
assertContentEquals(expected[i], actual[i])
|
||||
run {
|
||||
val actual = (-0x1032547698badcffL).toByteArray(LITTLE_ENDIAN)
|
||||
assertContentEquals(expected, actual)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,55 +7,17 @@ import kotlin.test.assertContentEquals
|
||||
class LongArrayConversionTest {
|
||||
@Test
|
||||
fun toByteArray() {
|
||||
val expected = arrayOf(
|
||||
byteArrayOf(
|
||||
0x12, 0x34, 0x56, 0x78, 0x12, 0x34, 0x56, 0x78,
|
||||
0x12, 0x34, 0x56, 0x78, 0x12, 0x34, 0x56, 0x78,
|
||||
),
|
||||
byteArrayOf(
|
||||
0x78, 0x56, 0x34, 0x12, 0x78, 0x56, 0x34, 0x12,
|
||||
0x78, 0x56, 0x34, 0x12, 0x78, 0x56, 0x34, 0x12,
|
||||
),
|
||||
val expected = byteArrayOf(
|
||||
0x01, 0x23, 0x45, 0x67, -0x77, -0x55, -0x33, -0x11,
|
||||
-0x11, -0x33, -0x55, -0x77, 0x67, 0x45, 0x23, 0x01,
|
||||
)
|
||||
val actual = arrayOf(
|
||||
longArrayOf(
|
||||
0x1234567812345678L,
|
||||
0x1234567812345678L,
|
||||
).toByteArray(),
|
||||
longArrayOf(
|
||||
0x1234567812345678L,
|
||||
0x1234567812345678L,
|
||||
).toByteArray(LITTLE_ENDIAN),
|
||||
)
|
||||
for (i in 0..1) {
|
||||
assertContentEquals(expected[i], actual[i])
|
||||
run {
|
||||
val actual = longArrayOf(0x0123456789abcdefL, -0x1032547698badcffL).toByteArray()
|
||||
assertContentEquals(expected, actual)
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
fun toUByteArray() {
|
||||
val expected = arrayOf(
|
||||
ubyteArrayOf(
|
||||
0x12U, 0x34U, 0x56U, 0x78U, 0x12U, 0x34U, 0x56U, 0x78U,
|
||||
0x12U, 0x34U, 0x56U, 0x78U, 0x12U, 0x34U, 0x56U, 0x78U,
|
||||
),
|
||||
ubyteArrayOf(
|
||||
0x78U, 0x56U, 0x34U, 0x12U, 0x78U, 0x56U, 0x34U, 0x12U,
|
||||
0x78U, 0x56U, 0x34U, 0x12U, 0x78U, 0x56U, 0x34U, 0x12U,
|
||||
),
|
||||
)
|
||||
val actual = arrayOf(
|
||||
longArrayOf(
|
||||
0x1234567812345678L,
|
||||
0x1234567812345678L,
|
||||
).toUByteArray(),
|
||||
longArrayOf(
|
||||
0x1234567812345678L,
|
||||
0x1234567812345678L,
|
||||
).toUByteArray(LITTLE_ENDIAN),
|
||||
)
|
||||
for (i in 0..1) {
|
||||
assertContentEquals(expected[i], actual[i])
|
||||
run {
|
||||
val actual = longArrayOf(-0x1032547698badcffL, 0x0123456789abcdefL).toByteArray(order = LITTLE_ENDIAN)
|
||||
assertContentEquals(expected, actual)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,21 +0,0 @@
|
||||
package com.infendro.bytes.ubytearray
|
||||
|
||||
import kotlin.test.Test
|
||||
import kotlin.test.assertContentEquals
|
||||
import kotlin.test.assertEquals
|
||||
|
||||
class UByteArrayStringTest {
|
||||
@Test
|
||||
fun encodeToUByteArray() {
|
||||
val expected = ubyteArrayOf(0x50U, 0x41U, 0x53U, 0x53U, 0x57U, 0x4FU, 0x52U, 0x44U)
|
||||
val actual = "PASSWORD".encodeToUByteArray()
|
||||
assertContentEquals(expected, actual)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun decodeToString() {
|
||||
val expected = "PASSWORD"
|
||||
val actual = ubyteArrayOf(0x50U, 0x41U, 0x53U, 0x53U, 0x57U, 0x4FU, 0x52U, 0x44U).decodeToString()
|
||||
assertEquals(expected, actual)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user