blob: 1635b65809dfa36b16901c0a00aa39dd2d085a1a [file] [log] [blame]
Matthew Sloyan65c21a12023-04-04 12:06:14 +01001//
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
12namespace armnnOpaqueDelegate
13{
14
15TEST_SUITE("ArmnnOpaqueDelegate")
16{
17
18TEST_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