summaryrefslogtreecommitdiffstats
path: root/tools/render-test
diff options
context:
space:
mode:
authorjsmall-nvidia <jsmall@nvidia.com>2019-04-02 09:22:13 -0400
committerGitHub <noreply@github.com>2019-04-02 09:22:13 -0400
commit2896aa39a529a00673a30ef4a9c3ebe76f401fea (patch)
tree3db2c41af598b3285c5313055d90dbf1a5cc06b6 /tools/render-test
parentc21bffecd9da150576f62ecf8a73a1660717abe9 (diff)
Feature/test improvements (#934)
* First pass extract the test information by 'running tests'. * * Checking renderer availablilty * Using TestInfo to determine which tests are run and synthesized * Display if test is synthesized and what render api it's targetting * * Improved comments * Removed some dead code * Display ignored tests. * TestInfo -> TestRequirements * * Added DIAGNOSTIC_TEST type - test always runs (ie has no requirements). * Made diagnostic tests use DIAGNOSTIC_TEST * TestInfo -> TestRequirements * TestDetails holds TestRequirements and TestOptions * Fix debug typo.
Diffstat (limited to 'tools/render-test')
-rw-r--r--tools/render-test/options.cpp4
-rw-r--r--tools/render-test/options.h1
-rw-r--r--tools/render-test/render-test-main.cpp17
3 files changed, 20 insertions, 2 deletions
diff --git a/tools/render-test/options.cpp b/tools/render-test/options.cpp
index 9d5ff35c8..2277a6ad7 100644
--- a/tools/render-test/options.cpp
+++ b/tools/render-test/options.cpp
@@ -151,6 +151,10 @@ SlangResult parseOptions(int argc, const char*const* argv, Slang::WriterHelper s
{
gOptions.useDXIL = true;
}
+ else if (strcmp(arg, "-only-startup") == 0)
+ {
+ gOptions.onlyStartup = true;
+ }
else if (strcmp(arg, "-adapter") == 0)
{
if (argCursor == argEnd)
diff --git a/tools/render-test/options.h b/tools/render-test/options.h
index 104906f42..0214c66e7 100644
--- a/tools/render-test/options.h
+++ b/tools/render-test/options.h
@@ -55,6 +55,7 @@ struct Options
int slangArgCount = 0;
bool useDXIL = false;
+ bool onlyStartup = false;
Slang::List<Slang::String> renderFeatures; /// Required render features for this test to run
diff --git a/tools/render-test/render-test-main.cpp b/tools/render-test/render-test-main.cpp
index 2bc6cd8f8..34e041473 100644
--- a/tools/render-test/render-test-main.cpp
+++ b/tools/render-test/render-test-main.cpp
@@ -555,6 +555,7 @@ SLANG_TEST_TOOL_API SlangResult innerMain(Slang::StdWriters* stdWriters, SlangSe
return SLANG_FAIL;
}
+
StringBuilder rendererName;
rendererName << "[" << RendererUtil::toText(gOptions.rendererType) << "] ";
if (gOptions.adapter.Length())
@@ -565,7 +566,10 @@ SLANG_TEST_TOOL_API SlangResult innerMain(Slang::StdWriters* stdWriters, SlangSe
if (!renderer)
{
- fprintf(stderr, "Unable to create renderer %s\n", rendererName.Buffer());
+ if (!gOptions.onlyStartup)
+ {
+ fprintf(stderr, "Unable to create renderer %s\n", rendererName.Buffer());
+ }
return SLANG_FAIL;
}
@@ -578,11 +582,20 @@ SLANG_TEST_TOOL_API SlangResult innerMain(Slang::StdWriters* stdWriters, SlangSe
SlangResult res = renderer->initialize(desc, (HWND)window->getHandle());
if (SLANG_FAILED(res))
{
- fprintf(stderr, "Unable to initialize renderer %s\n", rendererName.Buffer());
+ if (!gOptions.onlyStartup)
+ {
+ fprintf(stderr, "Unable to initialize renderer %s\n", rendererName.Buffer());
+ }
return res;
}
}
+ // If the only test is we can startup, then we are done
+ if (gOptions.onlyStartup)
+ {
+ return SLANG_OK;
+ }
+
{
for (const auto& feature : gOptions.renderFeatures)
{