1 /*
2 * Copyright (c) 2024 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 "interfaces/inner_api/drawable_descriptor/drawable_descriptor.h"
19 #include "interfaces/inner_api/drawable_descriptor/image_converter.h"
20 #include "interfaces/inner_api/drawable_descriptor/js_drawable_descriptor.h"
21 #include "node_extened.h"
22 #include "native_drawable_descriptor.h"
23
24 using namespace testing;
25 using namespace testing::ext;
26 using namespace OHOS::Ace::Napi;
27
28 namespace OHOS::Ace {
29
30 class JsDrawableDescriptorTest : public testing::Test {
31 public:
SetUpTestCase()32 static void SetUpTestCase() {};
TearDownTestCase()33 static void TearDownTestCase() {};
34 };
35
36 /**
37 * @tc.name: JsDrawableDescriptorTest001
38 * @tc.desc: test Export function;
39 * @tc.type: FUNC
40 */
HWTEST_F(JsDrawableDescriptorTest, JsDrawableDescriptorTest001, TestSize.Level1)41 HWTEST_F(JsDrawableDescriptorTest, JsDrawableDescriptorTest001, TestSize.Level1)
42 {
43 napi_env env = nullptr;
44 napi_value exports = nullptr;
45 JsDrawableDescriptor jsDrawableDescriptor;
46 napi_value result = jsDrawableDescriptor.Export(env, exports);
47 EXPECT_EQ(result, nullptr);
48 }
49
50 /**
51 * @tc.name: JsDrawableDescriptorTest002
52 * @tc.desc: test ToNapi function;
53 * @tc.type: FUNC
54 */
HWTEST_F(JsDrawableDescriptorTest, JsDrawableDescriptorTest002, TestSize.Level1)55 HWTEST_F(JsDrawableDescriptorTest, JsDrawableDescriptorTest002, TestSize.Level1)
56 {
57 napi_env env = nullptr;
58 DrawableDescriptor* drawable = nullptr;
59 JsDrawableDescriptor jsDrawableDescriptor;
60 napi_value result = jsDrawableDescriptor.ToNapi(env, drawable, DrawableDescriptor::DrawableType::PIXELMAP);
61 EXPECT_EQ(result, nullptr);
62 }
63
64 /**
65 * @tc.name: JsDrawableDescriptorTest003
66 * @tc.desc: test ToNapi function;
67 * @tc.type: FUNC
68 */
HWTEST_F(JsDrawableDescriptorTest, JsDrawableDescriptorTest003, TestSize.Level1)69 HWTEST_F(JsDrawableDescriptorTest, JsDrawableDescriptorTest003, TestSize.Level1)
70 {
71 napi_env env = nullptr;
72 DrawableDescriptor drawable;
73 JsDrawableDescriptor jsDrawableDescriptor;
74 JsDrawableDescriptor::baseConstructor_ = (napi_ref)malloc(1000);
75 napi_value result = jsDrawableDescriptor.ToNapi(env, &drawable, DrawableDescriptor::DrawableType::ANIMATED);
76 EXPECT_EQ(result, nullptr);
77 free(JsDrawableDescriptor::baseConstructor_);
78 }
79
80 /**
81 * @tc.name: JsDrawableDescriptorTest004
82 * @tc.desc: test ToNapi function;
83 * @tc.type: FUNC
84 */
HWTEST_F(JsDrawableDescriptorTest, JsDrawableDescriptorTest004, TestSize.Level1)85 HWTEST_F(JsDrawableDescriptorTest, JsDrawableDescriptorTest004, TestSize.Level1)
86 {
87 napi_env env = nullptr;
88 DrawableDescriptor drawable;
89 JsDrawableDescriptor jsDrawableDescriptor;
90 JsDrawableDescriptor::layeredConstructor_ = (napi_ref)malloc(1000);
91 napi_value result = jsDrawableDescriptor.ToNapi(env, &drawable, DrawableDescriptor::DrawableType::BASE);
92 EXPECT_EQ(result, nullptr);
93 free(JsDrawableDescriptor::layeredConstructor_);
94 }
95
96 /**
97 * @tc.name: JsDrawableDescriptorTest005
98 * @tc.desc: test ToNapi function;
99 * @tc.type: FUNC
100 */
HWTEST_F(JsDrawableDescriptorTest, JsDrawableDescriptorTest005, TestSize.Level1)101 HWTEST_F(JsDrawableDescriptorTest, JsDrawableDescriptorTest005, TestSize.Level1)
102 {
103 napi_env env = nullptr;
104 DrawableDescriptor drawable;
105 JsDrawableDescriptor jsDrawableDescriptor;
106 JsDrawableDescriptor::animatedConstructor_ = (napi_ref)malloc(1000);
107 napi_value result = jsDrawableDescriptor.ToNapi(env, &drawable, DrawableDescriptor::DrawableType::LAYERED);
108 EXPECT_EQ(result, nullptr);
109 free(JsDrawableDescriptor::animatedConstructor_);
110 }
111
112 /**
113 * @tc.name: JsDrawableDescriptorTest006
114 * @tc.desc: test ToNapi function;
115 * @tc.type: FUNC
116 */
HWTEST_F(JsDrawableDescriptorTest, JsDrawableDescriptorTest006, TestSize.Level1)117 HWTEST_F(JsDrawableDescriptorTest, JsDrawableDescriptorTest006, TestSize.Level1)
118 {
119 napi_env env = nullptr;
120 DrawableDescriptor drawable;
121 JsDrawableDescriptor jsDrawableDescriptor;
122 JsDrawableDescriptor::pixelMapConstructor_ = (napi_ref)malloc(1000);
123 napi_value result = jsDrawableDescriptor.ToNapi(env, &drawable, DrawableDescriptor::DrawableType::PIXELMAP);
124 EXPECT_EQ(result, nullptr);
125 free(JsDrawableDescriptor::pixelMapConstructor_);
126 }
127
128 /**
129 * @tc.name: JsDrawableDescriptorTest007
130 * @tc.desc: test GetPixelMapFromNapi function;
131 * @tc.type: FUNC
132 */
HWTEST_F(JsDrawableDescriptorTest, JsDrawableDescriptorTest007, TestSize.Level1)133 HWTEST_F(JsDrawableDescriptorTest, JsDrawableDescriptorTest007, TestSize.Level1)
134 {
135 napi_env env = nullptr;
136 napi_value exports = nullptr;
137 JsDrawableDescriptor jsDrawableDescriptor;
138 std::shared_ptr<Media::PixelMap> result = jsDrawableDescriptor.GetPixelMapFromNapi(env, exports);
139 EXPECT_EQ(result, nullptr);
140 }
141
142 /**
143 * @tc.name: JsDrawableDescriptorTest008
144 * @tc.desc: test GetPixelMapFromDrawableNapi function;
145 * @tc.type: FUNC
146 */
HWTEST_F(JsDrawableDescriptorTest, JsDrawableDescriptorTest008, TestSize.Level1)147 HWTEST_F(JsDrawableDescriptorTest, JsDrawableDescriptorTest008, TestSize.Level1)
148 {
149 napi_env env = nullptr;
150 napi_value exports = nullptr;
151 JsDrawableDescriptor jsDrawableDescriptor;
152 std::shared_ptr<Media::PixelMap> result = jsDrawableDescriptor.GetPixelMapFromDrawableNapi(env, exports);
153 EXPECT_EQ(result, nullptr);
154 }
155
156 } // namespace OHOS::Ace
157