import random
import unittest
import os
import sys
import traceback
#random.seed(52747)
sys.dont_write_bytecode = True
sys.path.append("..")
import d3d11
class Result(unittest.TestResult):
def __init__(self):
unittest.TestResult.__init__(self)
self.dp_errors = 0
self.dp_failures = 0
def startTest(self, test):
unittest.TestResult.startTest(self, test)
print("Running test: '%s'" % test)
def addError(self, test, err):
unittest.TestResult.addError(self, test, err)
print("Exception: ", test, err[1])
#print("Exception: ", test)
self.dp_errors += 1
def addFailure(self, test, err):
unittest.TestResult.addFailure(self, test, err)
print("Test failed: '%s':" % test)
traceback.print_tb(err[2])
self.dp_failures += 1
files = os.listdir(os.getcwd())
tests = []
for f in files:
if f.find(".pyc") != -1:
continue
if f.find("test_") != -1 and f.find("_all") == -1:
#if f.find("test_buffer") != -1:
name = f.replace(".py", "")
m = __import__(name)
tests.append(m.Test)
device = d3d11.Device(None)
suite = unittest.TestSuite()
for test in tests:
s = unittest.makeSuite(test)
suite.addTest(s)
os.system("cls")
print("Starting testing...")
result = Result()
suite.run(result)
print ("\n-----------------------------")
print ("DirectPython 11 Test Suite:")
print (" %i test cases run" % len(tests) )
print (" %i tests executed" % result.testsRun )
print (" %i tests failed" % result.dp_failures )
print (" %i exceptions were raised" % result.dp_errors )
print ("\n %s" % {1:"SUCCESS!", 0:"FAILURE!"}[result.wasSuccessful()])