1 /*
2  * Copyright (c) 2022 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 #ifndef SCRIPT_UNITTEST_H
17 #define SCRIPT_UNITTEST_H
18 
19 #include <string>
20 #include "pkg_manager.h"
21 
22 namespace Hpackage {
23 class TestScriptPkgManager : public PkgManager {
24 public:
CreatePackage(const std::string & path,const std::string & keyName,PkgInfoPtr header,std::vector<std::pair<std::string,ZipFileInfo>> & files)25     int32_t CreatePackage(const std::string &path, const std::string &keyName, PkgInfoPtr header,
26         std::vector<std::pair<std::string, ZipFileInfo>> &files) override
27     {
28         return PKG_SUCCESS;
29     }
CreatePackage(const std::string & path,const std::string & keyName,PkgInfoPtr header,std::vector<std::pair<std::string,ComponentInfo>> & files)30     int32_t CreatePackage(const std::string &path, const std::string &keyName, PkgInfoPtr header,
31         std::vector<std::pair<std::string, ComponentInfo>> &files) override
32     {
33         return PKG_SUCCESS;
34     }
CreatePackage(const std::string & path,const std::string & keyName,PkgInfoPtr header,std::vector<std::pair<std::string,Lz4FileInfo>> & files)35     int32_t CreatePackage(const std::string &path, const std::string &keyName, PkgInfoPtr header,
36         std::vector<std::pair<std::string, Lz4FileInfo>> &files) override
37     {
38         return PKG_SUCCESS;
39     }
VerifyPackage(const std::string & packagePath,const std::string & keyPath,const std::string & version,const PkgBuffer & digest,VerifyCallback cb)40     int32_t VerifyPackage(const std::string &packagePath, const std::string &keyPath,
41         const std::string &version, const PkgBuffer &digest, VerifyCallback cb) override
42     {
43         return PKG_SUCCESS;
44     }
LoadPackage(const std::string & packagePath,const std::string & keyPath,std::vector<std::string> & fileIds)45     int32_t LoadPackage(const std::string &packagePath, const std::string &keyPath,
46         std::vector<std::string> &fileIds) override
47     {
48         return PKG_SUCCESS;
49     }
VerifyOtaPackage(const std::string & packagePath)50     int32_t VerifyOtaPackage(const std::string &packagePath) override
51     {
52         return PKG_SUCCESS;
53     }
VerifyOtaPackage(const std::string & devPath,uint64_t offset,size_t size)54     int32_t VerifyOtaPackage(const std::string &devPath, uint64_t offset, size_t size) override
55     {
56         return PKG_SUCCESS;
57     }
VerifyBinFile(const std::string & packagePath,const std::string & keyPath,const std::string & version,const PkgBuffer & digest)58     int32_t VerifyBinFile(const std::string &packagePath, const std::string &keyPath,
59         const std::string &version, const PkgBuffer &digest) override
60     {
61         return PKG_SUCCESS;
62     }
GetPackageInfo(const std::string & packagePath)63     const PkgInfo *GetPackageInfo(const std::string &packagePath) override
64     {
65         return nullptr;
66     }
ExtractFile(const std::string & fileId,StreamPtr output)67     int32_t ExtractFile(const std::string &fileId, StreamPtr output) override
68     {
69         return PKG_SUCCESS;
70     }
GetFileInfo(const std::string & fileId)71     const FileInfo *GetFileInfo(const std::string &fileId) override
72     {
73         return nullptr;
74     }
CreatePkgStream(StreamPtr & stream,const std::string & fileName,size_t size,int32_t type)75     int32_t CreatePkgStream(StreamPtr &stream, const std::string &fileName, size_t size,
76         int32_t type) override
77     {
78         return PKG_SUCCESS;
79     }
CreatePkgStream(StreamPtr & stream,const std::string & fileName,PkgStream::ExtractFileProcessor processor,const void * context)80     int32_t CreatePkgStream(StreamPtr &stream, const std::string &fileName,
81         PkgStream::ExtractFileProcessor processor, const void *context) override
82     {
83         return PKG_SUCCESS;
84     }
CreatePkgStream(StreamPtr & stream,const std::string & fileName,const PkgBuffer & buffer)85     int32_t CreatePkgStream(StreamPtr &stream, const std::string &fileName, const PkgBuffer &buffer) override
86     {
87         return PKG_SUCCESS;
88     }
ClosePkgStream(StreamPtr & stream)89     void ClosePkgStream(StreamPtr &stream) override { }
DecompressBuffer(FileInfoPtr info,const PkgBuffer & buffer,StreamPtr output)90     int32_t DecompressBuffer(FileInfoPtr info, const PkgBuffer &buffer, StreamPtr output) const override
91     {
92         return PKG_SUCCESS;
93     }
CompressBuffer(FileInfoPtr info,const PkgBuffer & buffer,StreamPtr output)94     int32_t CompressBuffer(FileInfoPtr info, const PkgBuffer &buffer, StreamPtr output) const override
95     {
96         return PKG_SUCCESS;
97     }
LoadPackageWithoutUnPack(const std::string & packagePath,std::vector<std::string> & fileIds)98     int32_t LoadPackageWithoutUnPack(const std::string &packagePath,
99         std::vector<std::string> &fileIds) override
100     {
101         return PKG_SUCCESS;
102     }
ParsePackage(StreamPtr stream,std::vector<std::string> & fileIds,int32_t type)103     int32_t ParsePackage(StreamPtr stream, std::vector<std::string> &fileIds, int32_t type) override
104     {
105         return PKG_SUCCESS;
106     }
SetPkgDecodeProgress(PkgDecodeProgress decodeProgress)107     void SetPkgDecodeProgress(PkgDecodeProgress decodeProgress) override {}
PostDecodeProgress(int type,size_t writeDataLen,const void * context)108     void PostDecodeProgress(int type, size_t writeDataLen, const void *context) override {}
LoadPackageWithStream(const std::string & packagePath,const std::string & keyPath,std::vector<std::string> & fileIds,uint8_t type,StreamPtr stream)109     int32_t LoadPackageWithStream(const std::string &packagePath, const std::string &keyPath,
110         std::vector<std::string> &fileIds, uint8_t type, StreamPtr stream) override
111     {
112         return PKG_SUCCESS;
113     }
CreatePkgStream(StreamPtr & stream,const std::string & fileName,uint64_t fileLen,Updater::RingBuffer * buffer)114     int32_t CreatePkgStream(StreamPtr &stream, const std::string &fileName,
115         uint64_t fileLen, Updater::RingBuffer *buffer) override
116     {
117         return PKG_SUCCESS;
118     }
GetPkgFileStream(const std::string & fileName)119     PkgManager::StreamPtr GetPkgFileStream(const std::string &fileName) override
120     {
121         return nullptr;
122     }
RegisterPkgFileCreator(const std::string & fileType,PkgFileConstructor constructor)123     void RegisterPkgFileCreator(const std::string &fileType, PkgFileConstructor constructor) override
124     {
125         return;
126     }
ParseComponents(const std::string & packagePath,std::vector<std::string> & fileName)127     int32_t ParseComponents(const std::string &packagePath, std::vector<std::string> &fileName) override
128     {
129         return PKG_SUCCESS;
130     }
LoadPackage(const std::string & packagePath,std::vector<std::string> & fileIds,PkgFile::PkgType type)131     int32_t LoadPackage(const std::string &packagePath,
132         std::vector<std::string> &fileIds, PkgFile::PkgType type) override
133     {
134         return PKG_SUCCESS;
135     }
VerifyAccPackage(const std::string & packagePath,const std::string & keyPath)136     int32_t VerifyAccPackage(const std::string &packagePath, const std::string &keyPath) override
137     {
138         return PKG_SUCCESS;
139     }
140 };
141 }
142 #endif // SCRIPT_UNITTEST_H