154aa6d63Sopenharmony_ci/* 254aa6d63Sopenharmony_ci * Copyright (c) 2024-2024 Huawei Device Co., Ltd. 354aa6d63Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 454aa6d63Sopenharmony_ci * you may not use this file except in compliance with the License. 554aa6d63Sopenharmony_ci * You may obtain a copy of the License at 654aa6d63Sopenharmony_ci * 754aa6d63Sopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 854aa6d63Sopenharmony_ci * 954aa6d63Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software 1054aa6d63Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 1154aa6d63Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1254aa6d63Sopenharmony_ci * See the License for the specific language governing permissions and 1354aa6d63Sopenharmony_ci * limitations under the License. 1454aa6d63Sopenharmony_ci */ 1554aa6d63Sopenharmony_ci#include <memory> 1654aa6d63Sopenharmony_ci#include <gtest/gtest.h> 1754aa6d63Sopenharmony_ci#include "block_head.h" 1854aa6d63Sopenharmony_ci 1954aa6d63Sopenharmony_cinamespace OHOS { 2054aa6d63Sopenharmony_cinamespace SignatureTools { 2154aa6d63Sopenharmony_ci 2254aa6d63Sopenharmony_ci/* 2354aa6d63Sopenharmony_ci* 测试套件,固定写法 2454aa6d63Sopenharmony_ci*/ 2554aa6d63Sopenharmony_ciclass BlockHeadTest : public testing::Test { 2654aa6d63Sopenharmony_cipublic: 2754aa6d63Sopenharmony_ci static void SetUpTestCase(void) 2854aa6d63Sopenharmony_ci { 2954aa6d63Sopenharmony_ci }; 3054aa6d63Sopenharmony_ci static void TearDownTestCase() 3154aa6d63Sopenharmony_ci { 3254aa6d63Sopenharmony_ci }; 3354aa6d63Sopenharmony_ci void SetUp() 3454aa6d63Sopenharmony_ci { 3554aa6d63Sopenharmony_ci }; 3654aa6d63Sopenharmony_ci void TearDown() 3754aa6d63Sopenharmony_ci { 3854aa6d63Sopenharmony_ci }; 3954aa6d63Sopenharmony_ci}; 4054aa6d63Sopenharmony_ci 4154aa6d63Sopenharmony_ci/** 4254aa6d63Sopenharmony_ci * @tc.name: GetBlockHead 4354aa6d63Sopenharmony_ci * @tc.desc: Test get block head for SUCCESS. 4454aa6d63Sopenharmony_ci * @tc.size: MEDIUM 4554aa6d63Sopenharmony_ci * @tc.type: FUNC 4654aa6d63Sopenharmony_ci * @tc.level Level 1 4754aa6d63Sopenharmony_ci * @tc.require: SR000H63TL 4854aa6d63Sopenharmony_ci */ 4954aa6d63Sopenharmony_ciHWTEST_F(BlockHeadTest, GetBlockHead, testing::ext::TestSize.Level1) 5054aa6d63Sopenharmony_ci{ 5154aa6d63Sopenharmony_ci std::shared_ptr<BlockHead> api = std::make_shared<BlockHead>(); 5254aa6d63Sopenharmony_ci std::string blockHead = api->GetBlockHead(0, 0, 0, 29148868); 5354aa6d63Sopenharmony_ci EXPECT_NE(blockHead.size(), 0); 5454aa6d63Sopenharmony_ci} 5554aa6d63Sopenharmony_ci 5654aa6d63Sopenharmony_ci/** 5754aa6d63Sopenharmony_ci * @tc.name: GetBlockHeadLittleEndian 5854aa6d63Sopenharmony_ci * @tc.desc: Test get block head by little endian for SUCCESS. 5954aa6d63Sopenharmony_ci * @tc.size: MEDIUM 6054aa6d63Sopenharmony_ci * @tc.type: FUNC 6154aa6d63Sopenharmony_ci * @tc.level Level 1 6254aa6d63Sopenharmony_ci * @tc.require: SR000H63TL 6354aa6d63Sopenharmony_ci */ 6454aa6d63Sopenharmony_ciHWTEST_F(BlockHeadTest, GetBlockHeadLittleEndian, testing::ext::TestSize.Level1) 6554aa6d63Sopenharmony_ci{ 6654aa6d63Sopenharmony_ci std::shared_ptr<BlockHead> api = std::make_shared<BlockHead>(); 6754aa6d63Sopenharmony_ci std::vector<int8_t> head = api->GetBlockHeadLittleEndian(0, 0, 0, 29148868); 6854aa6d63Sopenharmony_ci EXPECT_NE(head.size(), 0); 6954aa6d63Sopenharmony_ci} 7054aa6d63Sopenharmony_ci 7154aa6d63Sopenharmony_ci/** 7254aa6d63Sopenharmony_ci * @tc.name: GetBlockLen 7354aa6d63Sopenharmony_ci * @tc.desc: Test get block length for SUCCESS. 7454aa6d63Sopenharmony_ci * @tc.size: MEDIUM 7554aa6d63Sopenharmony_ci * @tc.type: FUNC 7654aa6d63Sopenharmony_ci * @tc.level Level 1 7754aa6d63Sopenharmony_ci * @tc.require: SR000H63TL 7854aa6d63Sopenharmony_ci */ 7954aa6d63Sopenharmony_ciHWTEST_F(BlockHeadTest, GetBlockLen, testing::ext::TestSize.Level1) 8054aa6d63Sopenharmony_ci{ 8154aa6d63Sopenharmony_ci std::shared_ptr<BlockHead> api = std::make_shared<BlockHead>(); 8254aa6d63Sopenharmony_ci int blockLen = api->GetBlockLen(); 8354aa6d63Sopenharmony_ci EXPECT_EQ(blockLen, 8); 8454aa6d63Sopenharmony_ci} 8554aa6d63Sopenharmony_ci 8654aa6d63Sopenharmony_ci/** 8754aa6d63Sopenharmony_ci * @tc.name: GetElfBlockLen 8854aa6d63Sopenharmony_ci * @tc.desc: Test get elf block length for SUCCESS. 8954aa6d63Sopenharmony_ci * @tc.size: MEDIUM 9054aa6d63Sopenharmony_ci * @tc.type: FUNC 9154aa6d63Sopenharmony_ci * @tc.level Level 1 9254aa6d63Sopenharmony_ci * @tc.require: SR000H63TL 9354aa6d63Sopenharmony_ci */ 9454aa6d63Sopenharmony_ciHWTEST_F(BlockHeadTest, GetElfBlockLen, testing::ext::TestSize.Level1) 9554aa6d63Sopenharmony_ci{ 9654aa6d63Sopenharmony_ci std::shared_ptr<BlockHead> api = std::make_shared<BlockHead>(); 9754aa6d63Sopenharmony_ci int elfBlockLen = api->GetElfBlockLen(); 9854aa6d63Sopenharmony_ci EXPECT_EQ(elfBlockLen, 12); 9954aa6d63Sopenharmony_ci} 10054aa6d63Sopenharmony_ci} // namespace SignatureTools 10154aa6d63Sopenharmony_ci} // namespace OHOS