• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2023 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 "js_quickfix_callback.h"
19 
20 using namespace testing;
21 using namespace testing::ext;
22 
23 namespace OHOS {
24 namespace AAFwk {
25 class JsQuickfixCallbackTest : public testing::Test {
26 public:
27     static void SetUpTestCase();
28     static void TearDownTestCase();
29     void SetUp() override;
30     void TearDown() override;
31 };
32 
SetUpTestCase()33 void JsQuickfixCallbackTest::SetUpTestCase()
34 {}
35 
TearDownTestCase()36 void JsQuickfixCallbackTest::TearDownTestCase()
37 {}
38 
SetUp()39 void JsQuickfixCallbackTest::SetUp()
40 {}
41 
TearDown()42 void JsQuickfixCallbackTest::TearDown()
43 {}
44 
45 /**
46  * @tc.name: JsQuickfixCallbackTest_0100
47  * @tc.desc: JsQuickfixCallbackTest Test
48  * @tc.type: FUNC
49  * @tc.require:
50  */
51 HWTEST_F(JsQuickfixCallbackTest, JsQuickfixCallbackTest_0100, TestSize.Level0)
52 {
53     std::string moudel = "<moudelName>";
54     std::string hqfFile = "<hqfFile>";
55     std::map<std::string, std::string> moduleAndPath;
56     moduleAndPath.insert(std::make_pair(moudel, hqfFile));
57     AbilityRuntime::JsQuickfixCallback jsQuickfixCallback(moduleAndPath);
58 
59     std::string baseFileName = "<baseFileName>";
60     std::string patchFileName;
61     void* patchBuffer = nullptr;
62     size_t patchSize = 0;
63     bool res = jsQuickfixCallback(baseFileName, patchFileName, &patchBuffer, patchSize);
64     EXPECT_FALSE(res);
65 }
66 
67 /**
68  * @tc.name: JsQuickfixCallbackTest_0200
69  * @tc.desc: JsQuickfixCallbackTest Test
70  * @tc.type: FUNC
71  * @tc.require:
72  */
73 HWTEST_F(JsQuickfixCallbackTest, JsQuickfixCallbackTest_0200, TestSize.Level0)
74 {
75     std::string moudel = "<moudelName>";
76     std::string hqfFile = "<hqfFile>";
77     std::map<std::string, std::string> moduleAndPath;
78     moduleAndPath.insert(std::make_pair(moudel, hqfFile));
79     AbilityRuntime::JsQuickfixCallback jsQuickfixCallback(moduleAndPath);
80 
81     std::string baseFileName = "baseFileName.abc";
82     std::string patchFileName;
83     void* patchBuffer = nullptr;
84     size_t patchSize = 0;
85     bool res = jsQuickfixCallback(baseFileName, patchFileName, &patchBuffer, patchSize);
86     EXPECT_FALSE(res);
87 }
88 
89 /**
90  * @tc.name: JsQuickfixCallbackTest_0300
91  * @tc.desc: JsQuickfixCallbackTest Test
92  * @tc.type: FUNC
93  * @tc.require:
94  */
95 HWTEST_F(JsQuickfixCallbackTest, JsQuickfixCallbackTest_0300, TestSize.Level0)
96 {
97     std::string moudel = "<moudelName>";
98     std::string hqfFile = "<hqfFile>";
99     std::map<std::string, std::string> moduleAndPath;
100     moduleAndPath.insert(std::make_pair(moudel, hqfFile));
101     AbilityRuntime::JsQuickfixCallback jsQuickfixCallback(moduleAndPath);
102 
103     std::string baseFileName = "/data/storage/el1/bundle/entry/ets/modules.abc";
104     std::string patchFileName;
105     void* patchBuffer = nullptr;
106     size_t patchSize = 0;
107     bool res = jsQuickfixCallback(baseFileName, patchFileName, &patchBuffer, patchSize);
108     EXPECT_FALSE(res);
109 }
110 
111 /**
112  * @tc.name: JsQuickfixCallbackTest_0400
113  * @tc.desc: JsQuickfixCallbackTest Test
114  * @tc.type: FUNC
115  * @tc.require:
116  */
117 HWTEST_F(JsQuickfixCallbackTest, JsQuickfixCallbackTest_0400, TestSize.Level0)
118 {
119     std::string moudel = "bundle";
120     std::string hqfFile = "<hqfFile>";
121     std::map<std::string, std::string> moduleAndPath;
122     moduleAndPath.insert(std::make_pair(moudel, hqfFile));
123     AbilityRuntime::JsQuickfixCallback jsQuickfixCallback(moduleAndPath);
124 
125     std::string baseFileName = "/data/storage/el1/bundle/bundle/ets/modules.abc";
126     std::string patchFileName;
127     void* patchBuffer = nullptr;
128     size_t patchSize = 0;
129     bool res = jsQuickfixCallback(baseFileName, patchFileName, &patchBuffer, patchSize);
130     EXPECT_FALSE(res);
131 }
132 }  // namespace AAFwk
133 }  // namespace OHOS
134 
135