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.
23 #include <dali/public-api/dali-core.h>
24 #include <dali-toolkit/dali-toolkit.h>
26 #include <dali-toolkit-test-suite-utils.h>
30 static void Startup();
31 static void Cleanup();
34 void (*tet_startup)() = Startup;
35 void (*tet_cleanup)() = Cleanup;
40 POSITIVE_TC_IDX = 0x01,
45 #define MAX_NUMBER_OF_TESTS 10000
47 struct tet_testlist tet_testlist[MAX_NUMBER_OF_TESTS];
50 // Add test functionality for all APIs in the class (Positive and Negative)
51 TEST_FUNCTION( UtcDaliPageTurnEffectApply, POSITIVE_TC_IDX );
52 TEST_FUNCTION( UtcDaliPageTurnEffectConstruct, POSITIVE_TC_IDX );
54 // Called only once before first test is run.
59 // Called only once after last test is run
64 // Create bitmap image
65 static BitmapImage CreateBitmapImage()
67 BitmapImage image = BitmapImage::New(4,4,Pixel::RGBA8888);
69 PixelBuffer* pixbuf = image.GetBuffer();
71 // Using a 4x4 image gives a better blend with the GL implementation
73 for(size_t i=0; i<16; i++)
84 static void UtcDaliPageTurnEffectApply()
86 ToolkitTestApplication application;
88 BitmapImage image = CreateBitmapImage();
90 Toolkit::PageTurnEffect pageTurnEffect = Toolkit::PageTurnEffect::New();
91 Toolkit::PageTurnEffect pageTurnEffect2 = Toolkit::PageTurnEffect::New(false);
93 ImageActor pageActor = ImageActor::New( image );
94 ImageActor backPageActor = ImageActor::New( image );
95 pageActor.Add( backPageActor );
97 pageTurnEffect.SetIsTurningBack( true );
98 pageTurnEffect.SetShadowWidth( 0.0f );
99 pageTurnEffect.SetSpineShadowParameter( Vector2( 0.0f, 0.0f ) );
101 pageActor.SetShaderEffect( pageTurnEffect );
102 Stage::GetCurrent().Add( pageActor );
104 application.SendNotification();
105 application.Render();
107 const Vector2 pageSize( 0.0f, 0.0f );
108 pageTurnEffect.SetPageSize( pageSize );
110 const Vector2 originalCenter( 0.0f, 0.0f );
111 pageTurnEffect.SetOriginalCenter( originalCenter );
113 const Vector2 currentCenter( 0.0f, 0.0f );
114 pageTurnEffect.SetCurrentCenter( currentCenter );
116 application.SendNotification();
117 application.Render();
119 TestGlAbstraction& gl = application.GetGlAbstraction();
120 DALI_TEST_CHECK( gl.CheckUniformValue( pageTurnEffect.GetPageSizePropertyName().c_str(), pageSize ) );
121 DALI_TEST_CHECK( gl.CheckUniformValue( pageTurnEffect.GetOriginalCenterPropertyName().c_str(), originalCenter ) );
122 DALI_TEST_CHECK( gl.CheckUniformValue( pageTurnEffect.GetCurrentCenterPropertyName().c_str(), currentCenter ) );
125 static void UtcDaliPageTurnEffectConstruct()
127 ToolkitTestApplication application;
129 Toolkit::PageTurnEffect* effect = new Toolkit::PageTurnEffect();
132 DALI_TEST_CHECK( true );