1/*
2 * Copyright (C) 2021 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#include "image/pixelmap_native.h"
18#include "pixelmap_native_impl.h"
19#include "common_utils.h"
20
21using namespace testing::ext;
22using namespace OHOS::Media;
23namespace OHOS {
24namespace Media {
25class PixelMapNdk2Test : public testing::Test {
26public:
27    PixelMapNdk2Test() {}
28    ~PixelMapNdk2Test() {}
29};
30
31/**
32 * @tc.name: OH_PixelmapInitializationOptions_SetGetSrcPixelFormat
33 * @tc.desc: OH_PixelmapInitializationOptions_SetGetSrcPixelFormat
34 * @tc.type: FUNC
35 */
36HWTEST_F(PixelMapNdk2Test, OH_PixelmapInitializationOptions_SetGetSrcPixelFormat, TestSize.Level3)
37{
38    GTEST_LOG_(INFO) << "PixelMapNdk2Test: OH_PixelmapNative_InitializationSetOptionsGetSrcPixelFormat start";
39    OH_Pixelmap_InitializationOptions *ops = nullptr;
40    OH_PixelmapInitializationOptions_Create(&ops);
41    int32_t srcpixelFormat = 0;
42    OH_PixelmapInitializationOptions_SetSrcPixelFormat(ops, 1);
43    OH_PixelmapInitializationOptions_GetSrcPixelFormat(ops, &srcpixelFormat);
44    ASSERT_EQ(srcpixelFormat, 1);
45    Image_ErrorCode ret = OH_PixelmapInitializationOptions_Release(ops);
46    ASSERT_EQ(ret, IMAGE_SUCCESS);
47    GTEST_LOG_(INFO) << "PixelMapNdk2Test: OH_PixelmapNative_InitializationSetOptionsGetSrcPixelFormat end";
48}
49
50/**
51 * @tc.name: OH_PixelmapNative_CreateEmptyPixelmap
52 * @tc.desc: OH_PixelmapNative_CreateEmptyPixelmap
53 * @tc.type: FUNC
54 */
55HWTEST_F(PixelMapNdk2Test, OH_PixelmapNative_CreateEmptyPixelmap, TestSize.Level3)
56{
57    GTEST_LOG_(INFO) << "PixelMapNdk2Test: OH_PixelmapNative_CreateEmptyPixelmap start";
58    OH_Pixelmap_InitializationOptions *options = nullptr;
59    OH_PixelmapNative **pixelmap = nullptr;
60    Image_ErrorCode ret = OH_PixelmapNative_CreateEmptyPixelmap(options, pixelmap);
61    ASSERT_EQ(ret, IMAGE_BAD_PARAMETER);
62    GTEST_LOG_(INFO) << "PixelMapNdk2Test: OH_PixelmapNative_CreateEmptyPixelmap end";
63}
64
65/**
66 * @tc.name: OH_PixelmapNative_ConvertAlphaFormat
67 * @tc.desc: OH_PixelmapNative_ConvertAlphaFormat
68 * @tc.type: FUNC
69 */
70HWTEST_F(PixelMapNdk2Test, OH_PixelmapNative_ConvertAlphaFormat, TestSize.Level3)
71{
72    GTEST_LOG_(INFO) << "PixelMapNdk2Test: OH_PixelmapNative_ConvertAlphaFormat start";
73    OH_PixelmapNative* srcpixelmap = nullptr;
74    OH_PixelmapNative* dstpixelmap = nullptr;
75    const bool isPremul = false;
76    Image_ErrorCode ret = OH_PixelmapNative_ConvertAlphaFormat(srcpixelmap, dstpixelmap, isPremul);
77    ASSERT_EQ(ret, IMAGE_BAD_PARAMETER);
78    GTEST_LOG_(INFO) << "PixelMapNdk2Test: OH_PixelmapNative_ConvertAlphaFormat end";
79}
80}
81}
82