1 /*
2  * Copyright (C) 2021 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 #include <gtest/gtest.h>
17 
18 #include "hks_cipher_test.h"
19 
20 #include "hks_api.h"
21 #include "hks_param.h"
22 #include "hks_test_cipher.h"
23 
24 #include "securec.h"
25 
26 using namespace testing::ext;
27 namespace {
28 class HksCipherTest : public testing::Test {
29 public:
30     static void SetUpTestCase(void);
31 
32     static void TearDownTestCase(void);
33 
34     void SetUp();
35 
36     void TearDown();
37 };
38 
SetUpTestCase(void)39 void HksCipherTest::SetUpTestCase(void)
40 {
41 }
42 
TearDownTestCase(void)43 void HksCipherTest::TearDownTestCase(void)
44 {
45 }
46 
SetUp()47 void HksCipherTest::SetUp()
48 {
49     EXPECT_EQ(HksInitialize(), 0);
50 }
51 
TearDown()52 void HksCipherTest::TearDown()
53 {
54 }
55 
56 /**
57  * @tc.name: HksCipherTest.HksCipherTest001
58  * @tc.desc: The static function will return true;
59  * @tc.type: FUNC
60  */
HWTEST_F(HksCipherTest, HksCipherTest001, TestSize.Level1)61 HWTEST_F(HksCipherTest, HksCipherTest001, TestSize.Level1)
62 {
63     ASSERT_TRUE(BaseTestCipher(1, 0, 1) == 0);
64 }
65 
66 #ifndef _CUT_AUTHENTICATE_
HWTEST_F(HksCipherTest, HksCipherTest002, TestSize.Level1)67 HWTEST_F(HksCipherTest, HksCipherTest002, TestSize.Level1)
68 {
69     ASSERT_TRUE(BaseTestCipher(1, 1, 1) == 0);
70 }
71 
HWTEST_F(HksCipherTest, HksCipherTest003, TestSize.Level1)72 HWTEST_F(HksCipherTest, HksCipherTest003, TestSize.Level1)
73 {
74     ASSERT_TRUE(BaseTestEncrypt(1, 0, 1) == 0);
75 }
76 
HWTEST_F(HksCipherTest, HksCipherTest004, TestSize.Level1)77 HWTEST_F(HksCipherTest, HksCipherTest004, TestSize.Level1)
78 {
79     ASSERT_TRUE(BaseTestEncrypt(1, 1, 1) == 0);
80 }
81 
HWTEST_F(HksCipherTest, HksCipherTest005, TestSize.Level1)82 HWTEST_F(HksCipherTest, HksCipherTest005, TestSize.Level1)
83 {
84     ASSERT_TRUE(BaseTestEncrypt(1, 2, 1) == 0);
85 }
86 
HWTEST_F(HksCipherTest, HksCipherTest006, TestSize.Level1)87 HWTEST_F(HksCipherTest, HksCipherTest006, TestSize.Level1)
88 {
89     ASSERT_TRUE(BaseTestEncrypt(1, 3, 1) == 0);
90 }
91 
HWTEST_F(HksCipherTest, HksCipherTest007, TestSize.Level1)92 HWTEST_F(HksCipherTest, HksCipherTest007, TestSize.Level1)
93 {
94     ASSERT_TRUE(BaseTestEncrypt(1, 4, 1) == 0);
95 }
96 
HWTEST_F(HksCipherTest, HksCipherTest008, TestSize.Level1)97 HWTEST_F(HksCipherTest, HksCipherTest008, TestSize.Level1)
98 {
99     ASSERT_TRUE(BaseTestDecrypt(1, 0, 1) == 0);
100 }
101 
HWTEST_F(HksCipherTest, HksCipherTest009, TestSize.Level1)102 HWTEST_F(HksCipherTest, HksCipherTest009, TestSize.Level1)
103 {
104     ASSERT_TRUE(BaseTestDecrypt(1, 1, 1) == 0);
105 }
106 
HWTEST_F(HksCipherTest, HksCipherTest010, TestSize.Level1)107 HWTEST_F(HksCipherTest, HksCipherTest010, TestSize.Level1)
108 {
109     ASSERT_TRUE(BaseTestCipher(1, 2, 1) == 0);
110 }
111 
HWTEST_F(HksCipherTest, HksCipherTest011, TestSize.Level1)112 HWTEST_F(HksCipherTest, HksCipherTest011, TestSize.Level1)
113 {
114     ASSERT_TRUE(BaseTestDecrypt(1, 3, 1) == 0);
115 }
116 
HWTEST_F(HksCipherTest, HksCipherTest012, TestSize.Level1)117 HWTEST_F(HksCipherTest, HksCipherTest012, TestSize.Level1)
118 {
119     ASSERT_TRUE(BaseTestDecrypt(1, 4, 1) == 0);
120 }
121 #endif /* _CUT_AUTHENTICATE_ */
122 }