2 * Copyright (c) 2014 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.
22 #include <dali/public-api/dali-core.h>
23 #include <dali-test-suite-utils.h>
24 #include <test-native-image.h>
29 void utc_dali_framebuffer_startup(void)
31 test_return_value = TET_UNDEF;
34 void utc_dali_framebuffer_cleanup(void)
36 test_return_value = TET_PASS;
39 static const float ROTATION_EPSILON = 0.0001f;
42 int UtcDaliFrameBufferImageNew01(void)
44 TestApplication application;
46 tet_infoline("UtcDaliFrameBufferImageNew01 - FrameBufferImage::New(unsigned int, unsigned int, Pixel::Format)");
48 // invoke default handle constructor
49 FrameBufferImage image;
50 Vector2 stageSize = Stage::GetCurrent().GetSize();
53 image = FrameBufferImage::New(); // create framebuffer with the same dimensions as the stage
54 ImageActor actor=ImageActor::New(image);
55 Stage::GetCurrent().Add(actor);
57 application.SendNotification();
60 application.SendNotification();
62 DALI_TEST_CHECK( image );
63 DALI_TEST_EQUALS((float)image.GetWidth(), stageSize.width, TEST_LOCATION);
64 DALI_TEST_EQUALS((float)image.GetHeight(), stageSize.height, TEST_LOCATION);
66 image = FrameBufferImage::New(16, 16); // create framebuffer with dimensions of 16x16
67 actor.SetImage(image);
69 application.SendNotification();
72 application.SendNotification();
74 DALI_TEST_CHECK( image );
75 DALI_TEST_EQUALS(image.GetWidth(), 16u, TEST_LOCATION);
76 DALI_TEST_EQUALS(image.GetHeight(), 16u, TEST_LOCATION);
80 int UtcDaliFrameBufferImageNew02(void)
82 TestApplication application;
84 tet_infoline("UtcDaliFrameBufferImageNew02 - FrameBufferImage::New(NativeImageInterface&)");
86 // invoke default handle constructor
87 FrameBufferImage image;
88 TestNativeImagePointer nativeImage = TestNativeImage::New(16, 16);
90 DALI_TEST_CHECK( !image );
93 image = FrameBufferImage::New(*(nativeImage.Get()));
95 DALI_TEST_CHECK( image );
99 int UtcDaliFrameBufferImageDownCast(void)
101 TestApplication application;
102 tet_infoline("Testing Dali::FrameBufferImage::DownCast()");
104 FrameBufferImage image = FrameBufferImage::New();
106 BaseHandle object(image);
108 FrameBufferImage image2 = FrameBufferImage::DownCast(object);
109 DALI_TEST_CHECK(image2);
111 FrameBufferImage image3 = DownCast< FrameBufferImage >(object);
112 DALI_TEST_CHECK(image3);
114 BaseHandle unInitializedObject;
115 FrameBufferImage image4 = FrameBufferImage::DownCast(unInitializedObject);
116 DALI_TEST_CHECK(!image4);
118 FrameBufferImage image5 = DownCast< FrameBufferImage >(unInitializedObject);
119 DALI_TEST_CHECK(!image5);
121 Image image6 = FrameBufferImage::New();
122 FrameBufferImage image7 = FrameBufferImage::DownCast(image6);
123 DALI_TEST_CHECK(image7);