• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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, Hardware
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 "c/drawing_bitmap.h"
19 #include "c/drawing_types.h"
20 
21 using namespace testing;
22 using namespace testing::ext;
23 
24 namespace OHOS {
25 namespace Rosen {
26 namespace Drawing {
27 class NativeDrawingBitmapTest : public testing::Test {
28 public:
29     static void SetUpTestCase();
30     static void TearDownTestCase();
31     void SetUp() override;
32     void TearDown() override;
33 };
34 
SetUpTestCase()35 void NativeDrawingBitmapTest::SetUpTestCase() {}
TearDownTestCase()36 void NativeDrawingBitmapTest::TearDownTestCase() {}
SetUp()37 void NativeDrawingBitmapTest::SetUp() {}
TearDown()38 void NativeDrawingBitmapTest::TearDown() {}
39 
40 /*
41  * @tc.name: NativeDrawingBitmapTest_bitmap001
42  * @tc.desc: test for create drawing_bitmap and destroy drawing_bitmap.
43  * @tc.type: FUNC
44  * @tc.require: AR000GTO5R
45  */
46 HWTEST_F(NativeDrawingBitmapTest, NativeDrawingBitmapTest_bitmap001, TestSize.Level1)
47 {
48     OH_Drawing_Bitmap* bitmap = OH_Drawing_BitmapCreate();
49     EXPECT_EQ(bitmap == nullptr, false);
50     OH_Drawing_BitmapDestroy(bitmap);
51 }
52 
53 /*
54  * @tc.name: NativeDrawingBitmapTest_bitmap002
55  * @tc.desc: test for drawing_bitmap build.
56  * @tc.type: FUNC
57  * @tc.require: AR000GTO5R
58  */
59 HWTEST_F(NativeDrawingBitmapTest, NativeDrawingBitmapTest_bitmap002, TestSize.Level1)
60 {
61     OH_Drawing_Bitmap* bitmap1 = OH_Drawing_BitmapCreate();
62     const unsigned int width = 500;
63     const unsigned int height = 500;
64     OH_Drawing_BitmapFormat bitmapFormat { COLOR_FORMAT_ALPHA_8, ALPHA_FORMAT_PREMUL };
65     OH_Drawing_BitmapBuild(bitmap1, width, height, &bitmapFormat);
66     EXPECT_EQ(width, OH_Drawing_BitmapGetWidth(bitmap1));
67     EXPECT_EQ(height, OH_Drawing_BitmapGetHeight(bitmap1));
68     OH_Drawing_BitmapDestroy(bitmap1);
69 }
70 
71 /*
72  * @tc.name: NativeDrawingBitmapTest_bitmap003
73  * @tc.desc: test for drawing_bitmap build.
74  * @tc.type: FUNC
75  * @tc.require: AR000GTO5R
76  */
77 HWTEST_F(NativeDrawingBitmapTest, NativeDrawingBitmapTest_bitmap003, TestSize.Level1)
78 {
79     OH_Drawing_Bitmap* bitmap2 = OH_Drawing_BitmapCreate();
80     const unsigned int width = 0;
81     const unsigned int height = 0;
82     OH_Drawing_BitmapFormat bitmapFormat { COLOR_FORMAT_RGB_565, ALPHA_FORMAT_OPAQUE };
83     OH_Drawing_BitmapBuild(bitmap2, width, height, &bitmapFormat);
84     EXPECT_EQ(width, OH_Drawing_BitmapGetWidth(bitmap2));
85     EXPECT_EQ(height, OH_Drawing_BitmapGetHeight(bitmap2));
86     OH_Drawing_BitmapDestroy(bitmap2);
87 }
88 
89 /*
90  * @tc.name: NativeDrawingBitmapTest_bitmap004
91  * @tc.desc: test for drawing_bitmap build.
92  * @tc.type: FUNC
93  * @tc.require: AR000GTO5R
94  */
95 HWTEST_F(NativeDrawingBitmapTest, NativeDrawingBitmapTest_bitmap004, TestSize.Level1)
96 {
97     OH_Drawing_Bitmap* bitmap4 = OH_Drawing_BitmapCreate();
98     const unsigned int width = 500;
99     const unsigned int height = 500;
100     OH_Drawing_BitmapFormat bitmapFormat { COLOR_FORMAT_ARGB_4444, ALPHA_FORMAT_UNPREMUL };
101     OH_Drawing_BitmapBuild(bitmap4, width, height, &bitmapFormat);
102     EXPECT_EQ(width, OH_Drawing_BitmapGetWidth(bitmap4));
103     EXPECT_EQ(height, OH_Drawing_BitmapGetHeight(bitmap4));
104     EXPECT_EQ(OH_Drawing_BitmapGetPixels(bitmap4) == nullptr, false);
105     OH_Drawing_BitmapDestroy(bitmap4);
106 }
107 
108 /*
109  * @tc.name: NativeDrawingBitmapTest_bitmap005
110  * @tc.desc: test for drawing_bitmap build.
111  * @tc.type: FUNC
112  * @tc.require: AR000GTO5R
113  */
114 HWTEST_F(NativeDrawingBitmapTest, NativeDrawingBitmapTest_bitmap005, TestSize.Level1)
115 {
116     OH_Drawing_Bitmap* bitmap5 = OH_Drawing_BitmapCreate();
117     const unsigned int width = 500;
118     const unsigned int height = 500;
119     OH_Drawing_BitmapFormat bitmapFormat { COLOR_FORMAT_RGBA_8888, ALPHA_FORMAT_UNPREMUL };
120     OH_Drawing_BitmapBuild(bitmap5, width, height, &bitmapFormat);
121     EXPECT_EQ(width, OH_Drawing_BitmapGetWidth(bitmap5));
122     EXPECT_EQ(height, OH_Drawing_BitmapGetHeight(bitmap5));
123     OH_Drawing_BitmapDestroy(bitmap5);
124 }
125 } // namespace Drawing
126 } // namespace Rosen
127 } // namespace OHOS