46 lines
1.2 KiB
Python
46 lines
1.2 KiB
Python
|
#!/usr/bin/env python3
|
||
|
#-*- coding: UTF-8 -*-
|
||
|
|
||
|
"""
|
||
|
This module uses the sample.py script to load all test models it finds.
|
||
|
|
||
|
Note: this is not an exhaustive test suite, it does not check the
|
||
|
data structures in detail. It just verifies whether basic
|
||
|
loading and querying of 3d models using pyassimp works.
|
||
|
"""
|
||
|
|
||
|
|
||
|
import sys,os
|
||
|
import sample
|
||
|
from pyassimp import pyassimp,errors
|
||
|
|
||
|
# paths to be walkd recursively
|
||
|
basepaths = [os.path.join('..','..','test','models'), os.path.join('..','..','test','models-nonbsd')]
|
||
|
|
||
|
# file extensions to be considered
|
||
|
extensions = ['.3ds','.x','.lwo','.obj','.md5mesh','.dxf','.ply','.stl','.dae','.md5anim','.lws','.irrmesh','.nff','.off','.blend']
|
||
|
|
||
|
def run_tests():
|
||
|
ok,err = 0,0
|
||
|
for path in basepaths:
|
||
|
for root, dirs, files in os.walk(path):
|
||
|
for afile in files:
|
||
|
base,ext = os.path.splitext(afile)
|
||
|
if ext in extensions:
|
||
|
try:
|
||
|
sample.main(os.path.join(root,afile))
|
||
|
ok += 1
|
||
|
except errors.AssimpError as error:
|
||
|
# assimp error is fine, this is a controlled case
|
||
|
print(error)
|
||
|
err += 1
|
||
|
print(('** Loaded %s models, got controlled errors for %s files' % (ok,err)))
|
||
|
|
||
|
|
||
|
if __name__ == '__main__':
|
||
|
run_tests()
|
||
|
|
||
|
|
||
|
|
||
|
|