aboutsummaryrefslogtreecommitdiff
path: root/tests/CaffeResNet-Armnn/CaffeResNet-Armnn.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/CaffeResNet-Armnn/CaffeResNet-Armnn.cpp')
-rw-r--r--tests/CaffeResNet-Armnn/CaffeResNet-Armnn.cpp36
1 files changed, 26 insertions, 10 deletions
diff --git a/tests/CaffeResNet-Armnn/CaffeResNet-Armnn.cpp b/tests/CaffeResNet-Armnn/CaffeResNet-Armnn.cpp
index ed304f8b0c..7cccb215a1 100644
--- a/tests/CaffeResNet-Armnn/CaffeResNet-Armnn.cpp
+++ b/tests/CaffeResNet-Armnn/CaffeResNet-Armnn.cpp
@@ -8,16 +8,32 @@
int main(int argc, char* argv[])
{
- std::vector<ImageSet> imageSet =
+ int retVal = EXIT_FAILURE;
+ try
{
- {"ILSVRC2012_val_00000018.JPEG", 21 },
- {"shark.jpg", 2}
- };
+ // Coverity fix: The following code may throw an exception of type std::length_error.
+ std::vector<ImageSet> imageSet =
+ {
+ {"ILSVRC2012_val_00000018.JPEG", 21 },
+ {"shark.jpg", 2}
+ };
- armnn::TensorShape inputTensorShape({ 1, 3, 224, 224 });
- return armnn::test::ClassifierInferenceTestMain<ImageNetDatabase, armnnCaffeParser::ICaffeParser>(
- argc, argv, "ResNet_50_ilsvrc15_model.caffemodel", true,
- "data", "prob", { 0, 1 },
- [&imageSet](const char* dataDir) { return ImageNetDatabase(dataDir, 224, 224, imageSet); },
- &inputTensorShape);
+ armnn::TensorShape inputTensorShape({ 1, 3, 224, 224 });
+
+ // Coverity fix: ClassifierInferenceTestMain() may throw uncaught exceptions.
+ retVal = armnn::test::ClassifierInferenceTestMain<ImageNetDatabase, armnnCaffeParser::ICaffeParser>(
+ argc, argv, "ResNet_50_ilsvrc15_model.caffemodel", true,
+ "data", "prob", { 0, 1 },
+ [&imageSet](const char* dataDir) { return ImageNetDatabase(dataDir, 224, 224, imageSet); },
+ &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: CaffeResNet-Armnn: An error has occurred when running "
+ "the classifier inference tests: " << e.what() << std::endl;
+ }
+ return retVal;
}