1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/gfx/2d/unittest/Main.cpp Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,56 @@ 1.4 +/* -*- Mode: C++; tab-width: 20; indent-tabs-mode: nil; c-basic-offset: 2 -*- 1.5 + * This Source Code Form is subject to the terms of the Mozilla Public 1.6 + * License, v. 2.0. If a copy of the MPL was not distributed with this 1.7 + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 1.8 + 1.9 +#include "SanityChecks.h" 1.10 +#include "TestPoint.h" 1.11 +#include "TestScaling.h" 1.12 +#include "TestBugs.h" 1.13 +#ifdef WIN32 1.14 +#include "TestDrawTargetD2D.h" 1.15 +#endif 1.16 + 1.17 +#include <string> 1.18 +#include <sstream> 1.19 + 1.20 +struct TestObject { 1.21 + TestBase *test; 1.22 + std::string name; 1.23 +}; 1.24 + 1.25 + 1.26 +using namespace std; 1.27 + 1.28 +int 1.29 +main() 1.30 +{ 1.31 + TestObject tests[] = 1.32 + { 1.33 + { new SanityChecks(), "Sanity Checks" }, 1.34 + #ifdef WIN32 1.35 + { new TestDrawTargetD2D(), "DrawTarget (D2D)" }, 1.36 + #endif 1.37 + { new TestPoint(), "Point Tests" }, 1.38 + { new TestScaling(), "Scaling Tests" } 1.39 + { new TestBugs(), "Bug Tests" } 1.40 + }; 1.41 + 1.42 + int totalFailures = 0; 1.43 + int totalTests = 0; 1.44 + stringstream message; 1.45 + printf("------ STARTING RUNNING TESTS ------\n"); 1.46 + for (int i = 0; i < sizeof(tests) / sizeof(TestObject); i++) { 1.47 + message << "--- RUNNING TESTS: " << tests[i].name << " ---\n"; 1.48 + printf(message.str().c_str()); 1.49 + message.str(""); 1.50 + int failures = 0; 1.51 + totalTests += tests[i].test->RunTests(&failures); 1.52 + totalFailures += failures; 1.53 + // Done with this test! 1.54 + delete tests[i].test; 1.55 + } 1.56 + message << "------ FINISHED RUNNING TESTS ------\nTests run: " << totalTests << " - Passes: " << totalTests - totalFailures << " - Failures: " << totalFailures << "\n"; 1.57 + printf(message.str().c_str()); 1.58 + return totalFailures; 1.59 +}