2 * Copyright (c) 2015 Samsung Electronics Co., Ltd.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
19 #include <dali/dali.h>
20 #include <dali-test-suite-utils.h>
21 #include <dali/devel-api/adaptor-framework/bitmap-loader.h>
27 // resolution: 34*34, pixel format: RGBA8888
28 static const char* gImage_34_RGBA = TEST_RESOURCE_DIR "/icon-edit.png";
29 // resolution: 128*128, pixel format: RGB888
30 static const char* gImage_128_RGB = TEST_RESOURCE_DIR "/gallery-small-1.jpg";
32 // this is image is not exist, for negative test
33 static const char* gImageNonExist = "non-exist.jpg";
36 void utc_dali_bitmap_loader_startup(void)
38 test_return_value = TET_UNDEF;
41 void utc_dali_bitmap_loader_cleanup(void)
43 test_return_value = TET_PASS;
46 int UtcDaliBitmapLoaderNew(void)
48 TestApplication application;
50 // invoke default handle constructor
53 DALI_TEST_CHECK( !loader );
56 loader = BitmapLoader::New( gImage_34_RGBA );
58 DALI_TEST_CHECK( loader );
62 int UtcDaliBitmapLoaderCopyConstructor(void)
64 TestApplication application;
66 BitmapLoader loader = BitmapLoader::New( gImage_34_RGBA);
67 BitmapLoader loaderCopy(loader);
69 DALI_TEST_EQUALS( (bool)loaderCopy, true, TEST_LOCATION );
73 int UtcDaliBitmapLoaderAssignmentOperator(void)
75 TestApplication application;
77 BitmapLoader loader = BitmapLoader::New( gImage_34_RGBA );
80 DALI_TEST_EQUALS( (bool)loader2, false, TEST_LOCATION );
83 DALI_TEST_EQUALS( (bool)loader2, true, TEST_LOCATION );
88 int UtcDaliBitmapLoaderGetUrl(void)
90 TestApplication application;
92 BitmapLoader loader = BitmapLoader::New( gImage_34_RGBA );
93 DALI_TEST_CHECK( loader.GetUrl() == gImage_34_RGBA );
99 int UtcDaliBitmapLoaderLoadP(void)
101 TestApplication application;
103 BitmapLoader loader1 = BitmapLoader::New( gImage_34_RGBA );
104 DALI_TEST_CHECK( ! loader1.IsLoaded() );
106 DALI_TEST_CHECK( loader1.IsLoaded() );
107 PixelData pixelData1 = loader1.GetPixelData();
108 DALI_TEST_CHECK( pixelData1 );
109 DALI_TEST_CHECK( pixelData1.GetWidth() == 34u );
110 DALI_TEST_CHECK( pixelData1.GetHeight() == 34u );
111 DALI_TEST_CHECK( pixelData1.GetPixelFormat() == Pixel::RGBA8888 );
113 BitmapLoader loader2 = BitmapLoader::New( gImage_128_RGB );
114 DALI_TEST_CHECK( ! loader2.IsLoaded() );
116 DALI_TEST_CHECK( loader2.IsLoaded() );
117 PixelData pixelData2 = loader2.GetPixelData();
118 DALI_TEST_CHECK( pixelData2 );
119 DALI_TEST_CHECK( pixelData2.GetWidth() == 128u );
120 DALI_TEST_CHECK( pixelData2.GetHeight() == 128u );
121 DALI_TEST_CHECK( pixelData2.GetPixelFormat() == Pixel::RGB888 );
126 int UtcDaliBitmapLoaderLoadN(void)
128 TestApplication application;
130 BitmapLoader loader = BitmapLoader::New( gImageNonExist );
131 DALI_TEST_CHECK( ! loader.IsLoaded() );
134 // cannot load image that is not exist
135 DALI_TEST_CHECK( ! loader.IsLoaded() );
136 PixelData pixelData = loader.GetPixelData();
137 DALI_TEST_CHECK( !pixelData);