1.3.72
 
Loading...
Searching...
No Matches
selfTest.cpp
1#include "ProjectBuilder.h"
2
3#ifdef ENABLE_RADIATION_MODEL
4#include "RadiationModel.h"
5#endif
6
7#define DOCTEST_CONFIG_IMPLEMENT
8#include <doctest.h>
9#include "doctest_utils.h"
10
11using namespace helios;
12
14#ifdef ENABLE_RADIATION_MODEL
15#define SKIP_IF_NO_GPU() \
16 do { \
17 if (!RadiationModel::isGPUBackendAvailable()) { \
18 DOCTEST_MESSAGE("SKIPPED: No GPU backend available (radiation plugin requires GPU)"); \
19 return; \
20 } \
21 } while (0)
22#else
23#define SKIP_IF_NO_GPU() ((void)0)
24#endif
25
26DOCTEST_TEST_CASE("ProjectBuilder - Constructor") {
27 DOCTEST_CHECK_NOTHROW(ProjectBuilder projectbuilder);
28}
29
30DOCTEST_TEST_CASE("ProjectBuilder - buildFromXML") {
31 SKIP_IF_NO_GPU();
32 ProjectBuilder projectbuilder;
33 DOCTEST_CHECK_NOTHROW(projectbuilder.buildFromXML());
34}
35
36int ProjectBuilder::selfTest(int argc, char **argv) {
37 return helios::runDoctestWithValidation(argc, argv);
38}