diff options
Diffstat (limited to 'src/armnn/test/TestUtils.cpp')
-rw-r--r-- | src/armnn/test/TestUtils.cpp | 24 |
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); } |