1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72
|
#!/usr/bin/env python3
import sys
from basisu_py.transcoder import Transcoder, TranscoderBackend
from basisu_py.constants import BasisTexFormat
print("========== TESTING TRANSCODER BACKENDS ==========\n")
# Load some test data (ensure test.ktx2 exists)
try:
test_data = open("test.ktx2", "rb").read()
print("[INFO] Loaded test.ktx2")
except FileNotFoundError:
print("[ERROR] test.ktx2 not found. Create one first via encoder tests.")
sys.exit(1)
# -------------------------------------------------------------------
# 1. Test NATIVE backend
# -------------------------------------------------------------------
print("\n--- Testing NATIVE transcoder backend ---")
try:
t_native = Transcoder(TranscoderBackend.NATIVE)
print(" [OK] Native backend loaded")
version = t_native.get_version()
print(f" Native get_version() = {version}")
# Open KTX2
raw = t_native.open(test_data)
print(" [OK] Opened KTX2 (native)")
# Query some basic properties
print(" Width :", t_native.get_width(raw))
print(" Height:", t_native.get_height(raw))
print(" Levels:", t_native.get_levels(raw))
# Cleanup
t_native.close(raw)
print(" [OK] Native transcoder basic operations working.")
except Exception as e:
print(" [FAIL] Native transcoder error:", e)
# -------------------------------------------------------------------
# 2. Test WASM backend
# -------------------------------------------------------------------
print("\n--- Testing WASM transcoder backend ---")
try:
t_wasm = Transcoder(TranscoderBackend.WASM)
print(" [OK] WASM backend loaded")
version = t_wasm.get_version()
print(f" WASM get_version() = {version}")
raw = t_wasm.open(test_data)
print(" [OK] Opened KTX2 (wasm)")
print(" Width :", t_wasm.get_width(raw))
print(" Height:", t_wasm.get_height(raw))
print(" Levels:", t_wasm.get_levels(raw))
t_wasm.close(raw)
print(" [OK] WASM transcoder basic operations working.")
except Exception as e:
print(" [FAIL] WASM transcoder error:", e)
print("\n========== DONE ==========")
|