aboutsummaryrefslogtreecommitdiff
path: root/tests/validate_examples/RunExample.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/validate_examples/RunExample.cpp')
-rw-r--r--tests/validate_examples/RunExample.cpp19
1 files changed, 14 insertions, 5 deletions
diff --git a/tests/validate_examples/RunExample.cpp b/tests/validate_examples/RunExample.cpp
index b4e5d37648..d842c5bd6f 100644
--- a/tests/validate_examples/RunExample.cpp
+++ b/tests/validate_examples/RunExample.cpp
@@ -68,21 +68,30 @@ public:
void do_setup() override
{
ARM_COMPUTE_ERROR_ON_NULLPTR(g_example.get());
- g_example->do_setup(g_example_argv.size(), &g_example_argv[0]);
+ _is_setup = g_example->do_setup(g_example_argv.size(), &g_example_argv[0]);
}
void do_run() override
{
- g_example->do_run();
+ if(_is_setup)
+ {
+ g_example->do_run();
+ }
}
void do_teardown() override
{
- if(validate)
+ if(_is_setup)
{
- g_example->do_validate();
+ if(validate)
+ {
+ g_example->do_validate();
+ }
+ g_example->do_teardown();
}
- g_example->do_teardown();
g_example = nullptr;
}
+
+private:
+ bool _is_setup{ false };
};
int run_example(int argc, char **argv, std::unique_ptr<ValidateExample> example)