Skip to content

Commit c14c87c

Browse files
committed
Fix test cases and range check of extension types
1 parent 4cba605 commit c14c87c

File tree

2 files changed

+4
-5
lines changed

2 files changed

+4
-5
lines changed

msgpack-core/src/main/java/org/msgpack/core/ExtensionTypeHeader.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ public ExtensionTypeHeader(byte type, int length) {
1616
}
1717

1818
public static byte checkedCastToByte(int code) {
19-
checkArgument(code < Byte.MIN_VALUE && code > Byte.MAX_VALUE, "Extension type code must be within the range of byte");
19+
checkArgument(Byte.MIN_VALUE <= code && code <= Byte.MAX_VALUE, "Extension type code must be within the range of byte");
2020
return (byte) code;
2121
}
2222

msgpack-core/src/test/scala/org/msgpack/core/MessagePackTest.scala

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -414,17 +414,16 @@ class MessagePackTest extends MessagePackSpec {
414414
}
415415

416416
"pack/unpack extension types" taggedAs("ext") in {
417-
forAll { (dataLen: Int, tpe: Int) =>
417+
forAll { (dataLen: Int, tpe: Byte) =>
418418
val l = Math.abs(dataLen)
419-
val t = Math.abs(tpe) % 128
420419
whenever(l >= 0) {
421-
val ext = new ExtensionTypeHeader(ExtensionTypeHeader.checkedCastToByte(l), t)
420+
val ext = new ExtensionTypeHeader(ExtensionTypeHeader.checkedCastToByte(tpe), l)
422421
check(ext, _.packExtensionTypeHeader(ext.getType, ext.getLength), _.unpackExtensionTypeHeader())
423422
}
424423
}
425424

426425
for(l <- testHeaderLength) {
427-
val ext = new ExtensionTypeHeader(ExtensionTypeHeader.checkedCastToByte(l), Random.nextInt(128))
426+
val ext = new ExtensionTypeHeader(ExtensionTypeHeader.checkedCastToByte(Random.nextInt(128)), l)
428427
check(ext, _.packExtensionTypeHeader(ext.getType, ext.getLength), _.unpackExtensionTypeHeader())
429428
}
430429

0 commit comments

Comments
 (0)