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 #include "image_packer_native.h" 18 #include "image_packer_native_impl.h" 19 #include "file_packer_stream.h" 20 21 using namespace testing::ext; 22 using namespace OHOS::Media; 23 24 namespace OHOS { 25 namespace Multimedia { 26 class ImagePackerNdk2Test : public testing::Test { 27 public: ImagePackerNdk2Test()28 ImagePackerNdk2Test() {} ~ImagePackerNdk2Test()29 ~ImagePackerNdk2Test() {} 30 }; 31 32 /** 33 * @tc.name: OH_ImageSourceInfo_Create 34 * @tc.desc: test OH_ImageSourceInfo_Create 35 * @tc.type: FUNC 36 */ 37 HWTEST_F(ImagePackerNdk2Test, OH_PackingOptions_Create, TestSize.Level3) 38 { 39 GTEST_LOG_(INFO) << "ImagePackerNdk2Test: OH_ImageSourceInfo_Create start"; 40 OH_PackingOptions *ops = nullptr; 41 Image_ErrorCode ret = OH_PackingOptions_Create(&ops); 42 ASSERT_EQ(ret, IMAGE_SUCCESS); 43 OH_PackingOptions_Release(ops); 44 GTEST_LOG_(INFO) << "ImagePackerNdk2Test: OH_ImageSourceInfo_Create end"; 45 } 46 47 /** 48 * @tc.name: OH_PackingOptions_SetGetMimeType 49 * @tc.desc: test OH_PackingOptions_SetGetMimeType 50 * @tc.type: FUNC 51 */ 52 HWTEST_F(ImagePackerNdk2Test, OH_PackingOptions_SetGetMimeType, TestSize.Level3) 53 { 54 GTEST_LOG_(INFO) << "ImagePackerNdk2Test: OH_PackingOptions_SetGetMimeType start"; 55 OH_PackingOptions *ops = nullptr; 56 char str[10] = ""; 57 char str2[10] = "12"; 58 Image_MimeType *mimeType = new Image_MimeType(); 59 mimeType->data = str; 60 mimeType->size = 0; 61 Image_MimeType *mimeType2 = new Image_MimeType(); 62 mimeType2->data = str2; 63 mimeType2->size = 2; 64 Image_ErrorCode ret = OH_PackingOptions_Create(&ops); 65 ASSERT_EQ(ret, IMAGE_SUCCESS); 66 OH_PackingOptions_SetMimeType(ops, mimeType2); 67 OH_PackingOptions_GetMimeType(ops, mimeType); 68 ASSERT_EQ(mimeType->size, 2); 69 string res(mimeType->data, mimeType->size); 70 ASSERT_EQ(res, "12"); 71 OH_PackingOptions_Release(ops); 72 GTEST_LOG_(INFO) << "ImagePackerNdk2Test: OH_PackingOptions_SetGetMimeType end"; 73 } 74 75 /** 76 * @tc.name: OH_PackingOptions_Release 77 * @tc.desc: test OH_PackingOptions_Release 78 * @tc.type: FUNC 79 */ 80 HWTEST_F(ImagePackerNdk2Test, OH_PackingOptions_Release, TestSize.Level3) 81 { 82 GTEST_LOG_(INFO) << "ImagePackerNdk2Test: OH_PackingOptions_Release start"; 83 OH_PackingOptions *ops = nullptr; 84 Image_ErrorCode ret = OH_PackingOptions_Release(ops); 85 ASSERT_EQ(ret, IMAGE_BAD_PARAMETER); 86 GTEST_LOG_(INFO) << "ImagePackerNdk2Test: OH_PackingOptions_Release end"; 87 } 88 89 /** 90 * @tc.name: OH_ImagePackerNative_Create 91 * @tc.desc: test OH_ImagePackerNative_Create 92 * @tc.type: FUNC 93 */ 94 HWTEST_F(ImagePackerNdk2Test, OH_ImagePackerNative_Create, TestSize.Level3) 95 { 96 GTEST_LOG_(INFO) << "ImagePackerNdk2Test: OH_ImagePackerNative_Create start"; 97 OH_ImagePackerNative *imagePacker = nullptr; 98 Image_ErrorCode ret = OH_ImagePackerNative_Create(&imagePacker); 99 ASSERT_EQ(ret, IMAGE_SUCCESS); 100 GTEST_LOG_(INFO) << "ImagePackerNdk2Test: OH_ImagePackerNative_Create end"; 101 } 102 103 /** 104 * @tc.name: OH_ImagePackerNative_PackToDataFromImageSource 105 * @tc.desc: test OH_ImagePackerNative_PackToDataFromImageSource 106 * @tc.type: FUNC 107 */ 108 HWTEST_F(ImagePackerNdk2Test, OH_ImagePackerNative_PackToDataFromImageSource, TestSize.Level3) 109 { 110 GTEST_LOG_(INFO) << "ImagePackerNdk2Test: OH_ImagePackerNative_PackToDataFromImageSource start"; 111 OH_ImagePackerNative *imagePacker = nullptr; 112 OH_PackingOptions* option = nullptr; 113 OH_ImageSourceNative* imageSource = nullptr; 114 uint8_t* outData = nullptr; 115 size_t *size = 0; 116 Image_ErrorCode ret = OH_ImagePackerNative_PackToDataFromImageSource(imagePacker, option, imageSource, 117 outData, size); 118 ASSERT_EQ(ret, IMAGE_BAD_PARAMETER); 119 GTEST_LOG_(INFO) << "ImagePackerNdk2Test: OH_ImagePackerNative_PackToDataFromImageSource end"; 120 } 121 122 /** 123 * @tc.name: OH_ImagePackerNative_PackToDataFromPixelmap 124 * @tc.desc: test OH_ImagePackerNative_PackToDataFromPixelmap 125 * @tc.type: FUNC 126 */ 127 HWTEST_F(ImagePackerNdk2Test, OH_ImagePackerNative_PackToDataFromPixelmap, TestSize.Level3) 128 { 129 GTEST_LOG_(INFO) << "ImagePackerNdk2Test: OH_ImagePackerNative_PackToDataFromPixelmap start"; 130 OH_ImagePackerNative *imagePacker = nullptr; 131 OH_PackingOptions* option = nullptr; 132 OH_PixelmapNative* pixelMap = nullptr; 133 uint8_t* outData = nullptr; 134 size_t *size = 0; 135 Image_ErrorCode ret = OH_ImagePackerNative_PackToDataFromPixelmap(imagePacker, option, pixelMap, outData, size); 136 ASSERT_EQ(ret, IMAGE_BAD_PARAMETER); 137 GTEST_LOG_(INFO) << "ImagePackerNdk2Test: OH_ImagePackerNative_PackToDataFromPixelmap end"; 138 } 139 140 /** 141 * @tc.name: OH_ImagePackerNative_PackToFileFromImageSource 142 * @tc.desc: test OH_ImagePackerNative_PackToFileFromImageSource 143 * @tc.type: FUNC 144 */ 145 HWTEST_F(ImagePackerNdk2Test, OH_ImagePackerNative_PackToFileFromImageSource, TestSize.Level3) 146 { 147 GTEST_LOG_(INFO) << "ImagePackerNdk2Test: OH_ImagePackerNative_PackToFileFromImageSource start"; 148 OH_ImagePackerNative *imagePacker = nullptr; 149 OH_PackingOptions* option = nullptr; 150 OH_ImageSourceNative* imageSource = nullptr; 151 int32_t fd = 0; 152 Image_ErrorCode ret = OH_ImagePackerNative_PackToFileFromImageSource(imagePacker, option, imageSource, fd); 153 ASSERT_EQ(ret, IMAGE_BAD_PARAMETER); 154 GTEST_LOG_(INFO) << "ImagePackerNdk2Test: OH_ImagePackerNative_PackToFileFromImageSource end"; 155 } 156 157 /** 158 * @tc.name: OH_ImagePackerNative_PackToFileFromPixelmap 159 * @tc.desc: test OH_ImagePackerNative_PackToFileFromPixelmap 160 * @tc.type: FUNC 161 */ 162 HWTEST_F(ImagePackerNdk2Test, OH_ImagePackerNative_PackToFileFromPixelmap, TestSize.Level3) 163 { 164 GTEST_LOG_(INFO) << "ImagePackerNdk2Test: OH_ImagePackerNative_PackToFileFromPixelmap start"; 165 OH_ImagePackerNative *imagePacker = nullptr; 166 OH_PackingOptions* option = nullptr; 167 OH_PixelmapNative* pixelMap = nullptr; 168 int32_t fd = 0; 169 Image_ErrorCode ret = OH_ImagePackerNative_PackToFileFromPixelmap(imagePacker, option, pixelMap, fd); 170 ASSERT_EQ(ret, IMAGE_BAD_PARAMETER); 171 GTEST_LOG_(INFO) << "ImagePackerNdk2Test: OH_ImagePackerNative_PackToFileFromPixelmap end"; 172 } 173 174 /** 175 * @tc.name: OH_ImagePackerNative_Release 176 * @tc.desc: test OH_ImagePackerNative_Release 177 * @tc.type: FUNC 178 */ 179 HWTEST_F(ImagePackerNdk2Test, OH_ImagePackerNative_Release, TestSize.Level3) 180 { 181 GTEST_LOG_(INFO) << "ImagePackerNdk2Test: OH_ImagePackerNative_Release start"; 182 OH_ImagePackerNative *imagePacker = nullptr; 183 Image_ErrorCode ret = OH_ImagePackerNative_Release(imagePacker); 184 ASSERT_EQ(ret, IMAGE_BAD_PARAMETER); 185 GTEST_LOG_(INFO) << "ImagePackerNdk2Test: OH_ImagePackerNative_Release end"; 186 } 187 188 } 189 }