aboutsummaryrefslogtreecommitdiff
path: root/Tests/varLib/builder_test.py
diff options
context:
space:
mode:
Diffstat (limited to 'Tests/varLib/builder_test.py')
-rw-r--r--Tests/varLib/builder_test.py23
1 files changed, 23 insertions, 0 deletions
diff --git a/Tests/varLib/builder_test.py b/Tests/varLib/builder_test.py
index 80607eaa..6cad103a 100644
--- a/Tests/varLib/builder_test.py
+++ b/Tests/varLib/builder_test.py
@@ -8,12 +8,20 @@ import pytest
([0], [[128]], 1),
([0, 1, 2], [[128, 1, 2], [3, -129, 5], [6, 7, 8]], 2),
([0, 1, 2], [[0, 128, 2], [3, 4, 5], [6, 7, -129]], 3),
+ ([0], [[32768]], 0x8001),
+ ([0, 1, 2], [[32768, 1, 2], [3, -129, 5], [6, 7, 8]], 0x8001),
+ ([0, 1, 2], [[32768, 1, 2], [3, -32769, 5], [6, 7, 8]], 0x8002),
+ ([0, 1, 2], [[0, 32768, 2], [3, 4, 5], [6, 7, -32769]], 0x8003),
], ids=[
"0_regions_0_deltas",
"1_region_1_uint8",
"1_region_1_short",
"3_regions_2_shorts_ordered",
"3_regions_2_shorts_unordered",
+ "1_region_1_long",
+ "3_regions_1_long_ordered",
+ "3_regions_2_longs_ordered",
+ "3_regions_2_longs_unordered",
])
def test_buildVarData_no_optimize(region_indices, items, expected_num_shorts):
data = buildVarData(region_indices, items, optimize=False)
@@ -41,6 +49,16 @@ def test_buildVarData_no_optimize(region_indices, items, expected_num_shorts):
[0, 1, 2], [[0, 1, 128], [3, -129, 5], [256, 7, 8]]),
([0, 1, 2], [[0, 128, 2], [0, 4, 5], [0, 7, 8]], 1,
[1, 2], [[128, 2], [4, 5], [7, 8]]),
+ ([0, 1, 2], [[0, 32768, 2], [3, 4, 5], [6, 7, 8]], 0x8001,
+ [1, 0, 2], [[32768, 0, 2], [4, 3, 5], [7, 6, 8]]),
+ ([0, 1, 2], [[0, 1, 32768], [3, 4, 5], [6, -32769, 8]], 0x8002,
+ [1, 2, 0], [[1, 32768, 0], [4, 5, 3], [-32769, 8, 6]]),
+ ([0, 1, 2], [[32768, 1, -32769], [3, 4, 5], [6, 7, 8]], 0x8002,
+ [0, 2, 1], [[32768, -32769, 1], [3, 5, 4], [6, 8, 7]]),
+ ([0, 1, 2], [[0, 1, 32768], [3, -32769, 5], [65536, 7, 8]], 0x8003,
+ [0, 1, 2], [[0, 1, 32768], [3, -32769, 5], [65536, 7, 8]]),
+ ([0, 1, 2], [[0, 32768, 2], [0, 4, 5], [0, 7, 8]], 0x8001,
+ [1, 2], [[32768, 2], [4, 5], [7, 8]]),
], ids=[
"0/3_shorts_no_reorder",
"1/3_shorts_reorder",
@@ -48,6 +66,11 @@ def test_buildVarData_no_optimize(region_indices, items, expected_num_shorts):
"2/3_shorts_same_row_reorder",
"3/3_shorts_no_reorder",
"1/3_shorts_1/3_zeroes",
+ "1/3_longs_reorder",
+ "2/3_longs_reorder",
+ "2/3_longs_same_row_reorder",
+ "3/3_longs_no_reorder",
+ "1/3_longs_1/3_zeroes",
])
def test_buildVarData_optimize(
region_indices, items, expected_num_shorts, expected_regions,