From 810133d97d4391151e86af90508222c480f362b7 Mon Sep 17 00:00:00 2001 From: Damien George Date: Tue, 25 Apr 2017 12:07:02 +1000 Subject: [PATCH] tests/basics: Add tests for int.from_bytes when src has trailing zeros. The trailing zeros should be truncated from the converted value. --- tests/basics/int_bytes.py | 4 ++++ tests/basics/int_bytes_intbig.py | 3 +++ 2 files changed, 7 insertions(+) diff --git a/tests/basics/int_bytes.py b/tests/basics/int_bytes.py index 45965ed464..93c00bba10 100644 --- a/tests/basics/int_bytes.py +++ b/tests/basics/int_bytes.py @@ -4,3 +4,7 @@ print((100).to_bytes(10, "little")) print(int.from_bytes(b"\x00\x01\0\0\0\0\0\0", "little")) print(int.from_bytes(b"\x01\0\0\0\0\0\0\0", "little")) print(int.from_bytes(b"\x00\x01\0\0\0\0\0\0", "little")) + +# check that extra zero bytes don't change the internal int value +print(int.from_bytes(bytes(20), "little") == 0) +print(int.from_bytes(b"\x01" + bytes(20), "little") == 1) diff --git a/tests/basics/int_bytes_intbig.py b/tests/basics/int_bytes_intbig.py index 39cd67d26f..0e0ad1cbb7 100644 --- a/tests/basics/int_bytes_intbig.py +++ b/tests/basics/int_bytes_intbig.py @@ -7,3 +7,6 @@ ib = int.from_bytes(b, "big") print(il) print(ib) print(il.to_bytes(20, "little")) + +# check that extra zero bytes don't change the internal int value +print(int.from_bytes(b + bytes(10), "little") == int.from_bytes(b, "little"))