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 <cstddef>
17 #include "gtest/gtest.h"
18 #include "skia_adapter/skia_image_info.h"
19
20 using namespace testing;
21 using namespace testing::ext;
22
23 namespace OHOS {
24 namespace Rosen {
25 namespace Drawing {
26 class SkiaImageInfoTest : public testing::Test {
27 public:
28 static void SetUpTestCase();
29 static void TearDownTestCase();
30 void SetUp() override;
31 void TearDown() override;
32 };
33
SetUpTestCase()34 void SkiaImageInfoTest::SetUpTestCase() {}
TearDownTestCase()35 void SkiaImageInfoTest::TearDownTestCase() {}
SetUp()36 void SkiaImageInfoTest::SetUp() {}
TearDown()37 void SkiaImageInfoTest::TearDown() {}
38
39 /**
40 * @tc.name: ConvertToSkColorType001
41 * @tc.desc: Test ConvertToSkColorType
42 * @tc.type: FUNC
43 * @tc.require: I8VQSW
44 */
45 HWTEST_F(SkiaImageInfoTest, ConvertToSkColorType001, TestSize.Level1)
46 {
47 ASSERT_TRUE(SkiaImageInfo::ConvertToSkColorType(ColorType::COLORTYPE_UNKNOWN)
48 == SkColorType::kUnknown_SkColorType);
49 ASSERT_TRUE(SkiaImageInfo::ConvertToSkColorType(ColorType::COLORTYPE_ALPHA_8)
50 == SkColorType::kAlpha_8_SkColorType);
51 ASSERT_TRUE(SkiaImageInfo::ConvertToSkColorType(ColorType::COLORTYPE_RGB_565)
52 == SkColorType::kRGB_565_SkColorType);
53 ASSERT_TRUE(SkiaImageInfo::ConvertToSkColorType(ColorType::COLORTYPE_ARGB_4444)
54 == SkColorType::kARGB_4444_SkColorType);
55 ASSERT_TRUE(SkiaImageInfo::ConvertToSkColorType(ColorType::COLORTYPE_RGBA_8888)
56 == SkColorType::kRGBA_8888_SkColorType);
57 ASSERT_TRUE(SkiaImageInfo::ConvertToSkColorType(ColorType::COLORTYPE_BGRA_8888)
58 == SkColorType::kBGRA_8888_SkColorType);
59 ASSERT_TRUE(SkiaImageInfo::ConvertToSkColorType(ColorType::COLORTYPE_RGBA_F16)
60 == SkColorType::kRGBA_F16_SkColorType);
61 ASSERT_TRUE(SkiaImageInfo::ConvertToSkColorType(ColorType::COLORTYPE_N32)
62 == SkColorType::kN32_SkColorType);
63 ASSERT_TRUE(SkiaImageInfo::ConvertToSkColorType(ColorType::COLORTYPE_RGBA_1010102)
64 == SkColorType::kRGBA_1010102_SkColorType);
65 }
66
67 /**
68 * @tc.name: ConvertToSkAlphaType001
69 * @tc.desc: Test ConvertToSkAlphaType
70 * @tc.type: FUNC
71 * @tc.require: I8VQSW
72 */
73 HWTEST_F(SkiaImageInfoTest, ConvertToSkAlphaType001, TestSize.Level1)
74 {
75 ASSERT_TRUE(SkiaImageInfo::ConvertToSkAlphaType(AlphaType::ALPHATYPE_UNKNOWN)
76 == SkAlphaType::kUnknown_SkAlphaType);
77 ASSERT_TRUE(SkiaImageInfo::ConvertToSkAlphaType(AlphaType::ALPHATYPE_OPAQUE)
78 == SkAlphaType::kOpaque_SkAlphaType);
79 ASSERT_TRUE(SkiaImageInfo::ConvertToSkAlphaType(AlphaType::ALPHATYPE_PREMUL)
80 == SkAlphaType::kPremul_SkAlphaType);
81 ASSERT_TRUE(SkiaImageInfo::ConvertToSkAlphaType(AlphaType::ALPHATYPE_UNPREMUL)
82 == SkAlphaType::kUnpremul_SkAlphaType);
83 }
84
85 /**
86 * @tc.name: ConvertToSkImageInfo001
87 * @tc.desc: Test ConvertToSkImageInfo
88 * @tc.type: FUNC
89 * @tc.require: I8VQSW
90 */
91 HWTEST_F(SkiaImageInfoTest, ConvertToSkImageInfo001, TestSize.Level1)
92 {
93 ImageInfo info;
94 ASSERT_TRUE(SkiaImageInfo::ConvertToSkImageInfo(info).width() == 0);
95 }
96
97 /**
98 * @tc.name: ConvertToColorType001
99 * @tc.desc: Test ConvertToColorType
100 * @tc.type: FUNC
101 * @tc.require: I8VQSW
102 */
103 HWTEST_F(SkiaImageInfoTest, ConvertToColorType001, TestSize.Level1)
104 {
105 ASSERT_TRUE(SkiaImageInfo::ConvertToColorType(SkColorType::kUnknown_SkColorType)
106 == ColorType::COLORTYPE_UNKNOWN);
107 ASSERT_TRUE(SkiaImageInfo::ConvertToColorType(SkColorType::kAlpha_8_SkColorType)
108 == ColorType::COLORTYPE_ALPHA_8);
109 ASSERT_TRUE(SkiaImageInfo::ConvertToColorType(SkColorType::kRGB_565_SkColorType)
110 == ColorType::COLORTYPE_RGB_565);
111 ASSERT_TRUE(SkiaImageInfo::ConvertToColorType(SkColorType::kARGB_4444_SkColorType)
112 == ColorType::COLORTYPE_ARGB_4444);
113 ASSERT_TRUE(SkiaImageInfo::ConvertToColorType(SkColorType::kRGBA_8888_SkColorType)
114 == ColorType::COLORTYPE_RGBA_8888);
115 ASSERT_TRUE(SkiaImageInfo::ConvertToColorType(SkColorType::kBGRA_8888_SkColorType)
116 == ColorType::COLORTYPE_BGRA_8888);
117 ASSERT_TRUE(SkiaImageInfo::ConvertToColorType(SkColorType::kRGBA_F16_SkColorType)
118 == ColorType::COLORTYPE_RGBA_F16);
119 ASSERT_TRUE(SkiaImageInfo::ConvertToColorType(SkColorType::kRGBA_1010102_SkColorType)
120 == ColorType::COLORTYPE_RGBA_1010102);
121 }
122
123 /**
124 * @tc.name: ConvertToAlphaType001
125 * @tc.desc: Test ConvertToAlphaType
126 * @tc.type: FUNC
127 * @tc.require: I8VQSW
128 */
129 HWTEST_F(SkiaImageInfoTest, ConvertToAlphaType001, TestSize.Level1)
130 {
131 ASSERT_TRUE(SkiaImageInfo::ConvertToAlphaType(SkAlphaType::kUnknown_SkAlphaType)
132 == AlphaType::ALPHATYPE_UNKNOWN);
133 ASSERT_TRUE(SkiaImageInfo::ConvertToAlphaType(SkAlphaType::kOpaque_SkAlphaType)
134 == AlphaType::ALPHATYPE_OPAQUE);
135 ASSERT_TRUE(SkiaImageInfo::ConvertToAlphaType(SkAlphaType::kPremul_SkAlphaType)
136 == AlphaType::ALPHATYPE_PREMUL);
137 ASSERT_TRUE(SkiaImageInfo::ConvertToAlphaType(SkAlphaType::kUnpremul_SkAlphaType)
138 == AlphaType::ALPHATYPE_UNPREMUL);
139 }
140
141 /**
142 * @tc.name: ConvertToRSImageInfo001
143 * @tc.desc: Test ConvertToRSImageInfo
144 * @tc.type: FUNC
145 * @tc.require: I8VQSW
146 */
147 HWTEST_F(SkiaImageInfoTest, ConvertToRSImageInfo001, TestSize.Level1)
148 {
149 SkImageInfo info;
150 ASSERT_TRUE(SkiaImageInfo::ConvertToRSImageInfo(info).GetWidth() == 0);
151 }
152
153 /**
154 * @tc.name: ConvertToSkEncodedImageFormat001
155 * @tc.desc: Test ConvertToSkEncodedImageFormat
156 * @tc.type: FUNC
157 * @tc.require: I8VQSW
158 */
159 HWTEST_F(SkiaImageInfoTest, ConvertToSkEncodedImageFormat001, TestSize.Level1)
160 {
161 ASSERT_TRUE(SkiaImageInfo::ConvertToSkEncodedImageFormat(EncodedImageFormat::JPEG)
162 == SkEncodedImageFormat::kJPEG);
163 ASSERT_TRUE(SkiaImageInfo::ConvertToSkEncodedImageFormat(EncodedImageFormat::PNG)
164 == SkEncodedImageFormat::kPNG);
165 ASSERT_TRUE(SkiaImageInfo::ConvertToSkEncodedImageFormat(EncodedImageFormat::WEBP)
166 == SkEncodedImageFormat::kWEBP);
167 ASSERT_TRUE(SkiaImageInfo::ConvertToSkEncodedImageFormat(EncodedImageFormat::UNKNOWN)
168 == SkEncodedImageFormat::kJPEG);
169 }
170 } // namespace Drawing
171 } // namespace Rosen
172 } // namespace OHOS