aboutsummaryrefslogtreecommitdiff
path: root/tests/TfCifar10-Armnn/TfCifar10-Armnn.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/TfCifar10-Armnn/TfCifar10-Armnn.cpp')
-rw-r--r--tests/TfCifar10-Armnn/TfCifar10-Armnn.cpp25
1 files changed, 20 insertions, 5 deletions
diff --git a/tests/TfCifar10-Armnn/TfCifar10-Armnn.cpp b/tests/TfCifar10-Armnn/TfCifar10-Armnn.cpp
index 0d9e16a4ba..cfe95095a9 100644
--- a/tests/TfCifar10-Armnn/TfCifar10-Armnn.cpp
+++ b/tests/TfCifar10-Armnn/TfCifar10-Armnn.cpp
@@ -9,9 +9,24 @@
int main(int argc, char* argv[])
{
armnn::TensorShape inputTensorShape({ 1, 32, 32, 3 });
- return armnn::test::ClassifierInferenceTestMain<Cifar10Database, armnnTfParser::ITfParser>(
- argc, argv, "cifar10_tf.prototxt", false,
- "data", "prob", { 0, 1, 2, 4, 7 },
- [](const char* dataDir) { return Cifar10Database(dataDir, true); },
- &inputTensorShape);
+
+ int retVal = EXIT_FAILURE;
+ try
+ {
+ // Coverity fix: ClassifierInferenceTestMain() may throw uncaught exceptions.
+ retVal = armnn::test::ClassifierInferenceTestMain<Cifar10Database, armnnTfParser::ITfParser>(
+ argc, argv, "cifar10_tf.prototxt", false,
+ "data", "prob", { 0, 1, 2, 4, 7 },
+ [](const char* dataDir) { return Cifar10Database(dataDir, true); },
+ &inputTensorShape);
+ }
+ catch (const std::exception& e)
+ {
+ // Coverity fix: BOOST_LOG_TRIVIAL (typically used to report errors) may throw an
+ // exception of type std::length_error.
+ // Using stderr instead in this context as there is no point in nesting try-catch blocks here.
+ std::cerr << "WARNING: TfCifar10-Armnn: An error has occurred when running "
+ "the classifier inference tests: " << e.what() << std::endl;
+ }
+ return retVal;
}