aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDavid Monahan <david.monahan@arm.com>2020-09-03 09:02:52 +0100
committerDavid Monahan <david.monahan@arm.com>2020-09-03 13:29:23 +0100
commit9e9c7f5067c287b9989ee49d34825809d7f611dd (patch)
treed3dd3bfc7636f584b1e8b21e204919f5065c245c /src
parentf737c678da7c8e4bf23dc7e7bfdb55407d64dd7c (diff)
downloadarmnn-9e9c7f5067c287b9989ee49d34825809d7f611dd.tar.gz
IVGCVSW-5261 Fix undefined reference to GetIdStatic()
* Moved DynamicBackend tests to only build when ArmnnRef is enabled due to a dependency on them dynamically loading the ArmnnRef backend object Signed-off-by: David Monahan <david.monahan@arm.com> Change-Id: Iee0480e7d0cf505bbb5c26629829d3d20fb60051
Diffstat (limited to 'src')
-rw-r--r--src/backends/backendsCommon/test/DynamicBackendTests.cpp8
-rw-r--r--src/backends/backendsCommon/test/DynamicBackendTests.hpp124
2 files changed, 68 insertions, 64 deletions
diff --git a/src/backends/backendsCommon/test/DynamicBackendTests.cpp b/src/backends/backendsCommon/test/DynamicBackendTests.cpp
index bb1a5cda6c..b1c8234691 100644
--- a/src/backends/backendsCommon/test/DynamicBackendTests.cpp
+++ b/src/backends/backendsCommon/test/DynamicBackendTests.cpp
@@ -21,7 +21,6 @@ ARMNN_SIMPLE_TEST_CASE(GetNotExistingEntryPoint, GetNotExistingEntryPointTestImp
ARMNN_SIMPLE_TEST_CASE(BackendVersioning, BackendVersioningTestImpl);
-ARMNN_SIMPLE_TEST_CASE(CreateValidDynamicBackendObject, CreateValidDynamicBackendObjectTestImpl);
ARMNN_SIMPLE_TEST_CASE(CreateDynamicBackendObjectInvalidHandle,
CreateDynamicBackendObjectInvalidHandleTestImpl);
@@ -50,10 +49,7 @@ ARMNN_SIMPLE_TEST_CASE(CreateDynamicBackendsNoPaths, CreateDynamicBackendsNoPath
ARMNN_SIMPLE_TEST_CASE(CreateDynamicBackendsAllInvalid, CreateDynamicBackendsAllInvalidTestImpl);
ARMNN_SIMPLE_TEST_CASE(CreateDynamicBackendsMixedTypes, CreateDynamicBackendsMixedTypesTestImpl);
-ARMNN_SIMPLE_TEST_CASE(RegisterSingleDynamicBackend, RegisterSingleDynamicBackendTestImpl);
-ARMNN_SIMPLE_TEST_CASE(RegisterMultipleDynamicBackends, RegisterMultipleDynamicBackendsTestImpl);
ARMNN_SIMPLE_TEST_CASE(RegisterMultipleInvalidDynamicBackends, RegisterMultipleInvalidDynamicBackendsTestImpl);
-ARMNN_SIMPLE_TEST_CASE(RegisterMixedDynamicBackends, RegisterMixedDynamicBackendsTestImpl);
#if !defined(ARMNN_DYNAMIC_BACKEND_ENABLED)
ARMNN_SIMPLE_TEST_CASE(RuntimeEmpty, RuntimeEmptyTestImpl);
@@ -68,6 +64,10 @@ ARMNN_SIMPLE_TEST_CASE(RuntimeInvalidOverridePath, RuntimeInvalidOverridePathTes
// This test unit needs the reference backend, it's not available if the reference backend is not built
ARMNN_SIMPLE_TEST_CASE(CreateReferenceDynamicBackend, CreateReferenceDynamicBackendTestImpl);
+ARMNN_SIMPLE_TEST_CASE(CreateValidDynamicBackendObject, CreateValidDynamicBackendObjectTestImpl);
+ARMNN_SIMPLE_TEST_CASE(RegisterSingleDynamicBackend, RegisterSingleDynamicBackendTestImpl);
+ARMNN_SIMPLE_TEST_CASE(RegisterMultipleDynamicBackends, RegisterMultipleDynamicBackendsTestImpl);
+ARMNN_SIMPLE_TEST_CASE(RegisterMixedDynamicBackends, RegisterMixedDynamicBackendsTestImpl);
#endif
diff --git a/src/backends/backendsCommon/test/DynamicBackendTests.hpp b/src/backends/backendsCommon/test/DynamicBackendTests.hpp
index 2f1f6202b6..090488eec4 100644
--- a/src/backends/backendsCommon/test/DynamicBackendTests.hpp
+++ b/src/backends/backendsCommon/test/DynamicBackendTests.hpp
@@ -374,6 +374,7 @@ void BackendVersioningTestImpl()
BOOST_TEST(TestDynamicBackendUtils::IsBackendCompatibleTest(backendApiVersion, earlierMinorBackendVersion) == true);
}
+#if defined(ARMNNREF_ENABLED)
void CreateValidDynamicBackendObjectTestImpl()
{
// Valid shared object handle
@@ -422,6 +423,7 @@ void CreateValidDynamicBackendObjectTestImpl()
BOOST_TEST((dynamicBackendInstance1->GetId() == "ValidTestDynamicBackend"));
BOOST_TEST((dynamicBackendInstance2->GetId() == "ValidTestDynamicBackend"));
}
+#endif
void CreateDynamicBackendObjectInvalidHandleTestImpl()
{
@@ -910,6 +912,7 @@ void CreateDynamicBackendsMixedTypesTestImpl()
BOOST_TEST((dynamicBackends[0]->GetBackendId() == "TestValid2"));
}
+#if defined(ARMNNREF_ENABLED)
void RegisterSingleDynamicBackendTestImpl()
{
using namespace armnn;
@@ -1033,66 +1036,6 @@ void RegisterMultipleDynamicBackendsTestImpl()
}
}
-void RegisterMultipleInvalidDynamicBackendsTestImpl()
-{
- using namespace armnn;
- using namespace fs;
-
- // Try to register many invalid dynamic backends
-
- // The test covers one directory:
- // <unit test path>/src/backends/backendsCommon/test/
- // └─ backendsTestPath9/ -> exists, contains files
- //
- // The test sub-directory backendsTestPath9/ contains the following test files:
- //
- // Arm_TestInvalid10_backend.so -> not valid (invalid backend id)
- // Arm_TestInvalid11_backend.so -> not valid (invalid backend id)
-
- std::string testDynamicBackendsSubDir9 = GetTestSubDirectory(g_TestDynamicBackendsSubDir9);
- BOOST_CHECK(exists(testDynamicBackendsSubDir9));
-
- std::string testInvalidBackend10FilePath = GetTestFilePath(testDynamicBackendsSubDir9,
- g_TestInvalidBackend10FileName);
- std::string testInvalidBackend11FilePath = GetTestFilePath(testDynamicBackendsSubDir9,
- g_TestInvalidBackend11FileName);
- BOOST_CHECK(exists(testInvalidBackend10FilePath));
- BOOST_CHECK(exists(testInvalidBackend11FilePath));
-
- std::vector<std::string> sharedObjects
- {
- testInvalidBackend10FilePath,
- testInvalidBackend11FilePath,
- "InvalidSharedObject"
- };
- std::vector<DynamicBackendPtr> dynamicBackends = TestDynamicBackendUtils::CreateDynamicBackends(sharedObjects);
-
- BOOST_TEST(dynamicBackends.size() == 2);
- BOOST_TEST((dynamicBackends[0] != nullptr));
- BOOST_TEST((dynamicBackends[1] != nullptr));
-
- BackendId dynamicBackendId1 = dynamicBackends[0]->GetBackendId();
- BackendId dynamicBackendId2 = dynamicBackends[1]->GetBackendId();
- BOOST_TEST((dynamicBackendId1 == ""));
- BOOST_TEST((dynamicBackendId2 == "Unknown"));
-
- for (size_t i = 0; i < dynamicBackends.size(); i++)
- {
- BackendVersion dynamicBackendVersion = dynamicBackends[i]->GetBackendVersion();
- BOOST_TEST(TestDynamicBackendUtils::IsBackendCompatible(dynamicBackendVersion));
- }
-
- // Dummy registry used for testing
- BackendRegistry backendRegistry;
- BOOST_TEST(backendRegistry.Size() == 0);
-
- // Check that no dynamic backend got registered
- BackendIdSet registeredBackendIds = TestDynamicBackendUtils::RegisterDynamicBackendsImplTest(backendRegistry,
- dynamicBackends);
- BOOST_TEST(backendRegistry.Size() == 0);
- BOOST_TEST(registeredBackendIds.empty());
-}
-
void RegisterMixedDynamicBackendsTestImpl()
{
using namespace armnn;
@@ -1238,6 +1181,67 @@ void RegisterMixedDynamicBackendsTestImpl()
BOOST_TEST((dynamicBackend->GetId() == expectedRegisteredbackendId));
}
}
+#endif
+
+void RegisterMultipleInvalidDynamicBackendsTestImpl()
+{
+ using namespace armnn;
+ using namespace fs;
+
+ // Try to register many invalid dynamic backends
+
+ // The test covers one directory:
+ // <unit test path>/src/backends/backendsCommon/test/
+ // └─ backendsTestPath9/ -> exists, contains files
+ //
+ // The test sub-directory backendsTestPath9/ contains the following test files:
+ //
+ // Arm_TestInvalid10_backend.so -> not valid (invalid backend id)
+ // Arm_TestInvalid11_backend.so -> not valid (invalid backend id)
+
+ std::string testDynamicBackendsSubDir9 = GetTestSubDirectory(g_TestDynamicBackendsSubDir9);
+ BOOST_CHECK(exists(testDynamicBackendsSubDir9));
+
+ std::string testInvalidBackend10FilePath = GetTestFilePath(testDynamicBackendsSubDir9,
+ g_TestInvalidBackend10FileName);
+ std::string testInvalidBackend11FilePath = GetTestFilePath(testDynamicBackendsSubDir9,
+ g_TestInvalidBackend11FileName);
+ BOOST_CHECK(exists(testInvalidBackend10FilePath));
+ BOOST_CHECK(exists(testInvalidBackend11FilePath));
+
+ std::vector<std::string> sharedObjects
+ {
+ testInvalidBackend10FilePath,
+ testInvalidBackend11FilePath,
+ "InvalidSharedObject"
+ };
+ std::vector<DynamicBackendPtr> dynamicBackends = TestDynamicBackendUtils::CreateDynamicBackends(sharedObjects);
+
+ BOOST_TEST(dynamicBackends.size() == 2);
+ BOOST_TEST((dynamicBackends[0] != nullptr));
+ BOOST_TEST((dynamicBackends[1] != nullptr));
+
+ BackendId dynamicBackendId1 = dynamicBackends[0]->GetBackendId();
+ BackendId dynamicBackendId2 = dynamicBackends[1]->GetBackendId();
+ BOOST_TEST((dynamicBackendId1 == ""));
+ BOOST_TEST((dynamicBackendId2 == "Unknown"));
+
+ for (size_t i = 0; i < dynamicBackends.size(); i++)
+ {
+ BackendVersion dynamicBackendVersion = dynamicBackends[i]->GetBackendVersion();
+ BOOST_TEST(TestDynamicBackendUtils::IsBackendCompatible(dynamicBackendVersion));
+ }
+
+ // Dummy registry used for testing
+ BackendRegistry backendRegistry;
+ BOOST_TEST(backendRegistry.Size() == 0);
+
+ // Check that no dynamic backend got registered
+ BackendIdSet registeredBackendIds = TestDynamicBackendUtils::RegisterDynamicBackendsImplTest(backendRegistry,
+ dynamicBackends);
+ BOOST_TEST(backendRegistry.Size() == 0);
+ BOOST_TEST(registeredBackendIds.empty());
+}
#if !defined(ARMNN_DYNAMIC_BACKEND_ENABLED)