blob: e78f8a287249ce8369ff31596ee493f70919b531 [file] [log] [blame]
Julian Hall38c729b2020-11-23 18:23:03 +01001/*
Imre Kisb059dfb2022-05-31 14:39:28 +02002 * Copyright (c) 2020-2022, Arm Limited and Contributors. All rights reserved.
Julian Hall38c729b2020-11-23 18:23:03 +01003 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
7#include <app/ts-demo/ts-demo.h>
Julian Hall7a703402021-08-04 09:20:43 +01008#include <service/crypto/client/cpp/protocol/packed-c/packedc_crypto_client.h>
julhal01c3f4e9a2020-12-15 13:39:01 +00009#include <protocols/rpc/common/packed-c/encoding.h>
Julian Hall38c729b2020-11-23 18:23:03 +010010#include <CppUTest/TestHarness.h>
julhal01c3f4e9a2020-12-15 13:39:01 +000011#include <service_locator.h>
12#include <service/crypto/client/cpp/crypto_client.h>
13
Julian Hall38c729b2020-11-23 18:23:03 +010014
15TEST_GROUP(TsDemoTests) {
16
17 void setup()
18 {
Imre Kisb059afa2023-08-02 14:36:21 +020019 m_rpc_session = NULL;
julhal01c3f4e9a2020-12-15 13:39:01 +000020 m_crypto_service_context = NULL;
21 m_crypto_client = NULL;
22
23 service_locator_init();
24
Imre Kisb059afa2023-08-02 14:36:21 +020025 m_crypto_service_context = service_locator_query("sn:trustedfirmware.org:crypto:0");
julhal01c3f4e9a2020-12-15 13:39:01 +000026 CHECK(m_crypto_service_context);
27
Imre Kisb059afa2023-08-02 14:36:21 +020028 m_rpc_session = service_context_open(m_crypto_service_context);
29 CHECK(m_rpc_session);
julhal01c3f4e9a2020-12-15 13:39:01 +000030
Imre Kisb059afa2023-08-02 14:36:21 +020031 m_crypto_client = new packedc_crypto_client(m_rpc_session);
Julian Hall38c729b2020-11-23 18:23:03 +010032 }
33
34 void teardown()
35 {
Julian Hall38c729b2020-11-23 18:23:03 +010036 delete m_crypto_client;
37 m_crypto_client = NULL;
julhal01c3f4e9a2020-12-15 13:39:01 +000038
Imre Kisb059dfb2022-05-31 14:39:28 +020039 if (m_crypto_service_context) {
Imre Kisb059afa2023-08-02 14:36:21 +020040 if (m_rpc_session) {
41 service_context_close(m_crypto_service_context, m_rpc_session);
42 m_rpc_session = NULL;
Imre Kisb059dfb2022-05-31 14:39:28 +020043 }
julhal01c3f4e9a2020-12-15 13:39:01 +000044
Imre Kisb059dfb2022-05-31 14:39:28 +020045 service_context_relinquish(m_crypto_service_context);
46 m_crypto_service_context = NULL;
47 }
Julian Hall38c729b2020-11-23 18:23:03 +010048 }
49
Imre Kisb059afa2023-08-02 14:36:21 +020050 struct rpc_caller_session *m_rpc_session;
julhal01c3f4e9a2020-12-15 13:39:01 +000051 struct service_context *m_crypto_service_context;
52 crypto_client *m_crypto_client;
Julian Hall38c729b2020-11-23 18:23:03 +010053};
54
55TEST(TsDemoTests, runTsDemo)
56{
57 int status = run_ts_demo(m_crypto_client, false);
58 CHECK_EQUAL(0, status);
59}