Organize tools and move Python tests into tools/tests
This commit is contained in:
1 parent
0aacee6518
commit
e4e1566e55
22 files changed
+209
-3
No files matched your search
@@ -0,0 +1,41 @@
|
||||
import os
|
||||
import tempfile
|
||||
import unittest
|
||||
from pathlib import Path
|
||||
|
||||
import npc_baseline
|
||||
|
||||
|
||||
class NpcBaselineTests(unittest.TestCase):
|
||||
def test_expected_files_cover_all_variants_and_views(self):
|
||||
rows = npc_baseline.expected_files()
|
||||
self.assertEqual(len(rows), 48)
|
||||
self.assertEqual({row[0] for row in rows}, set(npc_baseline.VARIANTS))
|
||||
self.assertEqual({row[1] for row in rows}, set(npc_baseline.VIEWS))
|
||||
self.assertEqual(len({row[2] for row in rows}), 48)
|
||||
|
||||
def test_sheet_accepts_a_custom_view_list(self):
|
||||
from PIL import Image
|
||||
with tempfile.TemporaryDirectory() as tmp:
|
||||
folder = Path(tmp)
|
||||
for variant in npc_baseline.VARIANTS:
|
||||
for view in ("idle", "sit"):
|
||||
Image.new("RGB", (32, 18), (40, 60, 80)).save(
|
||||
folder / f"{variant}__{view}.png")
|
||||
out = npc_baseline.build_sheet(folder, folder / "sheet.jpg", ["idle", "sit"])
|
||||
with Image.open(out) as sheet:
|
||||
# 2 views x 320 px cells.
|
||||
self.assertEqual(sheet.width, 640)
|
||||
|
||||
def test_latest_capture_prefers_the_full_stem(self):
|
||||
with tempfile.TemporaryDirectory() as tmp:
|
||||
folder = Path(tmp)
|
||||
(folder / "npc_casual__front.png").write_bytes(b"old")
|
||||
newer = folder / "npc_casual__front-v2.png"
|
||||
newer.write_bytes(b"new")
|
||||
os.utime(newer, (2_000_000_000, 2_000_000_000))
|
||||
self.assertEqual(npc_baseline.latest_for(folder, "npc_casual__front"), newer)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
||||
Reference in new issue
Block a user