aboutsummaryrefslogtreecommitdiff
path: root/src/armnn/test/TestUtils.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/armnn/test/TestUtils.cpp')
-rw-r--r--src/armnn/test/TestUtils.cpp24
1 files changed, 23 insertions, 1 deletions
diff --git a/src/armnn/test/TestUtils.cpp b/src/armnn/test/TestUtils.cpp
index 6020c7631c..97cc80c8a2 100644
--- a/src/armnn/test/TestUtils.cpp
+++ b/src/armnn/test/TestUtils.cpp
@@ -15,7 +15,29 @@ void Connect(armnn::IConnectableLayer* from, armnn::IConnectableLayer* to, const
ARMNN_ASSERT(from);
ARMNN_ASSERT(to);
- from->GetOutputSlot(fromIndex).Connect(to->GetInputSlot(toIndex));
+ try
+ {
+ from->GetOutputSlot(fromIndex).Connect(to->GetInputSlot(toIndex));
+ }
+ catch (const std::out_of_range& exc)
+ {
+ std::ostringstream message;
+
+ if (to->GetType() == armnn::LayerType::FullyConnected && toIndex == 2)
+ {
+ message << "Tried to connect bias to FullyConnected layer when bias is not enabled: ";
+ }
+
+ message << "Failed to connect to input slot "
+ << toIndex
+ << " on "
+ << GetLayerTypeAsCString(to->GetType())
+ << " layer "
+ << std::quoted(to->GetName())
+ << " as the slot does not exist or is unavailable";
+ throw LayerValidationException(message.str());
+ }
+
from->GetOutputSlot(fromIndex).SetTensorInfo(tensorInfo);
}