xref: /aosp_15_r20/external/armnn/delegate/opaque/src/test/ArmnnOpaqueDelegateTest.cpp (revision 89c4ff92f2867872bb9e2354d150bf0c8c502810)
1 //
2 // Copyright © 2023 Arm Ltd and Contributors. All rights reserved.
3 // SPDX-License-Identifier: MIT
4 //
5 
6 #define DOCTEST_CONFIG_IMPLEMENT_WITH_MAIN
7 #include <doctest/doctest.h>
8 
9 #include <opaque/include/armnn_delegate.hpp>
10 #include <opaque/include/Version.hpp>
11 
12 namespace armnnOpaqueDelegate
13 {
14 
15 TEST_SUITE("ArmnnOpaqueDelegate")
16 {
17 
18 TEST_CASE ("DelegateOptions_OpaqueDelegateDefault")
19 {
20     // Check default options can be created
21     auto options = armnnOpaqueDelegate::TfLiteArmnnDelegateOptionsDefault();
22     armnnOpaqueDelegate::ArmnnOpaqueDelegate delegate(options);
23 
24     // Check version returns correctly
25     auto version = delegate.GetVersion();
26     CHECK_EQ(version, OPAQUE_DELEGATE_VERSION);
27 
28     auto* builder = delegate.GetDelegateBuilder();
29     CHECK(builder);
30 
31     // Check Opaque delegate created
32     auto opaqueDelegate = armnnOpaqueDelegate::TfLiteArmnnOpaqueDelegateCreate(&options);
33     CHECK(opaqueDelegate);
34 
35     // Check Opaque Delegate can be deleted
36     CHECK(opaqueDelegate->opaque_delegate_builder->data);
37     armnnOpaqueDelegate::TfLiteArmnnOpaqueDelegateDelete(opaqueDelegate);
38 }
39 
40 }
41 
42 } // namespace armnnDelegate
43