1 /* *****************************************************************
3 * Copyright 2015 Samsung Electronics All Rights Reserved.
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
19 * *****************************************************************/
20 #include "gtest/gtest.h"
21 #include "oxmjustworks.h"
22 #include "oxmrandompin.h"
23 #include "ownershiptransfermanager.h"
29 TEST(JustWorksOxMTest, NullParam)
31 OTMContext_t* otmCtx = NULL;
32 OCStackResult res = OC_STACK_ERROR;
33 uint8_t *payloadRes = NULL;
36 //LoadSecretJustWorksCallback always returns OC_STACK_OK.
37 res = LoadSecretJustWorksCallback(otmCtx);
38 EXPECT_TRUE(OC_STACK_OK == res);
40 res = CreateSecureSessionJustWorksCallback(otmCtx);
41 EXPECT_TRUE(OC_STACK_INVALID_PARAM == res);
43 res = CreateJustWorksSelectOxmPayload(otmCtx, &payloadRes, &size);
44 EXPECT_TRUE(OC_STACK_INVALID_PARAM == res);
46 res = CreateJustWorksOwnerTransferPayload(otmCtx, &payloadRes, &size);
47 EXPECT_TRUE(OC_STACK_INVALID_PARAM == res);
50 otmCtx2.selectedDeviceInfo = NULL;
52 //LoadSecretJustWorksCallback always returns OC_STACK_OK.
53 res = LoadSecretJustWorksCallback(&otmCtx2);
54 EXPECT_TRUE(OC_STACK_OK == res);
56 res = CreateSecureSessionJustWorksCallback(&otmCtx2);
57 EXPECT_TRUE(OC_STACK_INVALID_PARAM == res);
59 res = CreateJustWorksSelectOxmPayload(&otmCtx2, &payloadRes, &size);
60 EXPECT_TRUE(OC_STACK_INVALID_PARAM == res);
62 res = CreateJustWorksOwnerTransferPayload(&otmCtx2, &payloadRes, &size);
63 EXPECT_TRUE(OC_STACK_INVALID_PARAM == res);
66 TEST(RandomPinOxMTest, NullParam)
68 OTMContext_t* otmCtx = NULL;
69 OCStackResult res = OC_STACK_ERROR;
70 uint8_t *payloadRes = NULL;
73 //LoadSecretJustWorksCallback always returns OC_STACK_OK.
74 res = InputPinCodeCallback(otmCtx);
75 EXPECT_TRUE(OC_STACK_INVALID_PARAM == res);
77 res = CreateSecureSessionRandomPinCallback(otmCtx);
78 EXPECT_TRUE(OC_STACK_INVALID_PARAM == res);
80 res = CreatePinBasedSelectOxmPayload(otmCtx, &payloadRes, &size);
81 EXPECT_TRUE(OC_STACK_INVALID_PARAM == res);
83 res = CreatePinBasedOwnerTransferPayload(otmCtx, &payloadRes, &size);
84 EXPECT_TRUE(OC_STACK_INVALID_PARAM == res);
87 otmCtx2.selectedDeviceInfo = NULL;
89 //LoadSecretJustWorksCallback always returns OC_STACK_OK.
90 res = InputPinCodeCallback(&otmCtx2);
91 EXPECT_TRUE(OC_STACK_INVALID_PARAM == res);
93 res = CreateSecureSessionRandomPinCallback(&otmCtx2);
94 EXPECT_TRUE(OC_STACK_INVALID_PARAM == res);
96 res = CreatePinBasedSelectOxmPayload(&otmCtx2, &payloadRes, &size);
97 EXPECT_TRUE(OC_STACK_INVALID_PARAM == res);
99 res = CreatePinBasedOwnerTransferPayload(&otmCtx2, &payloadRes, &size);
100 EXPECT_TRUE(OC_STACK_INVALID_PARAM == res);