removed reliance on dali-adaptor
[platform/core/uifw/dali-core.git] / automated-tests / src / dali / utc-Dali-TextStyle.cpp
1 /*
2  * Copyright (c) 2014 Samsung Electronics Co., Ltd.
3  *
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
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
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.
15  *
16  */
17
18 #include <iostream>
19
20 #include <stdlib.h>
21 #include <dali/public-api/dali-core.h>
22 #include <dali-test-suite-utils.h>
23
24 using namespace Dali;
25
26 void utc_dali_text_style_startup(void)
27 {
28   test_return_value = TET_UNDEF;
29 }
30
31 void utc_dali_text_style_cleanup(void)
32 {
33   test_return_value = TET_PASS;
34 }
35
36 namespace
37 {
38 static const std::string DEFAULT_FONT_NAME_STYLE( "" );
39 static const PointSize DEFAULT_FONT_POINT_SIZE( 0.f );
40
41 static const std::string FONT_FAMILY( "Arial" );
42 static const std::string FONT_STYLE( "Bold" );
43 static const PointSize FONT_POINT_SIZE( 12.f );
44 static const Vector4 TEXT_COLOR( Color::RED );
45
46 static const TextStyle::Weight TEXT_WEIGHT( TextStyle::EXTRALIGHT );
47 static const float SMOOTH_EDGE( 5.0f );
48
49 static const bool ITALICS( true );
50 static const Degree ITALICS_ANGLE( 10.f );
51
52 static const bool UNDERLINE( true );
53 static const float UNDERLINE_THICKNESS( 5.0f );
54 static const float UNDERLINE_POSITION( 60.0f );
55
56 static const bool SHADOW( true );
57 static const Vector4 SHADOW_COLOR( Color::BLUE );
58 static const Vector2 SHADOW_OFFSET( 2.f, 2.f );
59 static const float SHADOW_SIZE( 55.f );
60
61 static const bool GLOW( true );
62 static const Vector4 GLOW_COLOR( Color::BLACK );
63 static const float GLOW_INTENSITY( 10.0f );
64
65 static const bool OUTLINE( true );
66 static const Vector4 OUTLINE_COLOR( Color::MAGENTA );
67 static const Vector2 OUTLINE_THICKNESS( 15.f, 14.f );
68
69 static const bool GRADIENT( true );
70 static const Vector4 GRADIENT_COLOR( Color::YELLOW );
71 static const Vector2 GRADIENT_START_POINT( 1.f, 1.f );
72 static const Vector2 GRADIENT_END_POINT( 2.f, 2.f );
73 } // anon namespace
74
75 int UtcDaliTextStyleDefaultConstructor(void)
76 {
77   tet_infoline(" UtcDaliTextStyleDefaultConstructor ");
78
79   TestApplication application;
80
81   TextStyle defaultStyle;
82
83   DALI_TEST_CHECK( defaultStyle.IsFontNameDefault() );
84   DALI_TEST_CHECK( defaultStyle.IsFontStyleDefault() );
85   DALI_TEST_CHECK( defaultStyle.IsFontSizeDefault() );
86   DALI_TEST_CHECK( defaultStyle.IsTextColorDefault() );
87   DALI_TEST_CHECK( defaultStyle.IsFontWeightDefault() );
88   DALI_TEST_CHECK( defaultStyle.IsSmoothEdgeDefault() );
89   DALI_TEST_CHECK( defaultStyle.IsItalicsDefault() );
90   DALI_TEST_CHECK( defaultStyle.IsUnderlineDefault() );
91   DALI_TEST_CHECK( defaultStyle.IsShadowDefault() );
92   DALI_TEST_CHECK( defaultStyle.IsGlowDefault() );
93   DALI_TEST_CHECK( defaultStyle.IsOutlineDefault() );
94   DALI_TEST_CHECK( defaultStyle.IsGradientDefault() );
95
96   DALI_TEST_EQUALS( defaultStyle.GetFontName(), DEFAULT_FONT_NAME_STYLE, TEST_LOCATION );
97   DALI_TEST_EQUALS( defaultStyle.GetFontStyle(), DEFAULT_FONT_NAME_STYLE, TEST_LOCATION );
98   DALI_TEST_EQUALS( defaultStyle.GetFontPointSize(), DEFAULT_FONT_POINT_SIZE, TEST_LOCATION );
99   DALI_TEST_EQUALS( defaultStyle.GetTextColor(), TextStyle::DEFAULT_TEXT_COLOR, TEST_LOCATION );
100
101   DALI_TEST_EQUALS( defaultStyle.GetWeight(), TextStyle::DEFAULT_FONT_WEIGHT, TEST_LOCATION );
102   DALI_TEST_EQUALS( defaultStyle.GetSmoothEdge(), TextStyle::DEFAULT_SMOOTH_EDGE_DISTANCE_FIELD, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
103
104   DALI_TEST_CHECK( !defaultStyle.IsItalicsEnabled() );
105   DALI_TEST_EQUALS( defaultStyle.GetItalicsAngle(), TextStyle::DEFAULT_ITALICS_ANGLE, TEST_LOCATION );
106
107   DALI_TEST_CHECK( !defaultStyle.IsUnderlineEnabled() );
108   DALI_TEST_EQUALS( defaultStyle.GetUnderlineThickness(), TextStyle::DEFAULT_UNDERLINE_THICKNESS, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
109   DALI_TEST_EQUALS( defaultStyle.GetUnderlinePosition(), TextStyle::DEFAULT_UNDERLINE_POSITION, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
110
111   DALI_TEST_CHECK( !defaultStyle.IsShadowEnabled() );
112   DALI_TEST_EQUALS( defaultStyle.GetShadowColor(), TextStyle::DEFAULT_SHADOW_COLOR, TEST_LOCATION );
113   DALI_TEST_EQUALS( defaultStyle.GetShadowOffset(), TextStyle::DEFAULT_SHADOW_OFFSET, TEST_LOCATION );
114
115   DALI_TEST_CHECK( !defaultStyle.IsGlowEnabled() );
116   DALI_TEST_EQUALS( defaultStyle.GetGlowColor(), TextStyle::DEFAULT_GLOW_COLOR, TEST_LOCATION );
117   DALI_TEST_EQUALS( defaultStyle.GetGlowIntensity(), TextStyle::DEFAULT_GLOW_INTENSITY, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
118
119   DALI_TEST_CHECK( !defaultStyle.IsOutlineEnabled() );
120   DALI_TEST_EQUALS( defaultStyle.GetOutlineColor(), TextStyle::DEFAULT_OUTLINE_COLOR, TEST_LOCATION );
121   DALI_TEST_EQUALS( defaultStyle.GetOutlineThickness(), TextStyle::DEFAULT_OUTLINE_THICKNESS, TEST_LOCATION );
122
123   DALI_TEST_CHECK( !defaultStyle.IsGradientEnabled() );
124   DALI_TEST_EQUALS( defaultStyle.GetGradientColor(), TextStyle::DEFAULT_GRADIENT_COLOR, TEST_LOCATION );
125   DALI_TEST_EQUALS( defaultStyle.GetGradientStartPoint(), TextStyle::DEFAULT_GRADIENT_START_POINT, TEST_LOCATION );
126   DALI_TEST_EQUALS( defaultStyle.GetGradientEndPoint(), TextStyle::DEFAULT_GRADIENT_END_POINT, TEST_LOCATION );
127
128   END_TEST;
129 }
130
131 int UtcDaliTextStyleCopyConstructor(void)
132 {
133   tet_infoline(" UtcDaliTextStyleCopyConstructor ");
134
135   TestApplication application;
136
137   TextStyle style;
138   style.SetFontName( FONT_FAMILY );
139   style.SetFontStyle( FONT_STYLE );
140   style.SetFontPointSize( FONT_POINT_SIZE );
141   style.SetTextColor( TEXT_COLOR );
142
143   style.SetWeight( TEXT_WEIGHT );
144   style.SetSmoothEdge( SMOOTH_EDGE );
145
146   style.SetItalics( ITALICS, ITALICS_ANGLE );
147   style.SetUnderline( UNDERLINE, UNDERLINE_THICKNESS, UNDERLINE_POSITION );
148   style.SetShadow( SHADOW, SHADOW_COLOR, SHADOW_OFFSET, SHADOW_SIZE );
149   style.SetGlow( GLOW, GLOW_COLOR, GLOW_INTENSITY );
150   style.SetOutline( OUTLINE, OUTLINE_COLOR, OUTLINE_THICKNESS );
151   style.SetGradient( GRADIENT, GRADIENT_COLOR, GRADIENT_START_POINT, GRADIENT_END_POINT );
152
153   TextStyle style1( style );
154   TextStyle style2 = style;
155
156   DALI_TEST_CHECK( !style1.IsFontNameDefault() );
157   DALI_TEST_CHECK( !style1.IsFontStyleDefault() );
158   DALI_TEST_CHECK( !style1.IsFontSizeDefault() );
159   DALI_TEST_CHECK( !style1.IsTextColorDefault() );
160   DALI_TEST_CHECK( !style1.IsFontWeightDefault() );
161   DALI_TEST_CHECK( !style1.IsSmoothEdgeDefault() );
162   DALI_TEST_CHECK( !style1.IsItalicsDefault() );
163   DALI_TEST_CHECK( !style1.IsUnderlineDefault() );
164   DALI_TEST_CHECK( !style1.IsShadowDefault() );
165   DALI_TEST_CHECK( !style1.IsGlowDefault() );
166   DALI_TEST_CHECK( !style1.IsOutlineDefault() );
167   DALI_TEST_CHECK( !style1.IsGradientDefault() );
168
169   DALI_TEST_EQUALS( style1.GetFontName(), FONT_FAMILY, TEST_LOCATION );
170   DALI_TEST_EQUALS( style1.GetFontStyle(), FONT_STYLE, TEST_LOCATION );
171   DALI_TEST_EQUALS( style1.GetFontPointSize(), FONT_POINT_SIZE, TEST_LOCATION );
172   DALI_TEST_EQUALS( style1.GetTextColor(), TEXT_COLOR, TEST_LOCATION );
173
174   DALI_TEST_EQUALS( style1.GetWeight(), TEXT_WEIGHT, TEST_LOCATION );
175   DALI_TEST_EQUALS( style1.GetSmoothEdge(), SMOOTH_EDGE, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
176
177   DALI_TEST_CHECK( style1.IsItalicsEnabled() );
178   DALI_TEST_EQUALS( style1.GetItalicsAngle(), ITALICS_ANGLE, TEST_LOCATION );
179
180   DALI_TEST_CHECK( style1.IsUnderlineEnabled() );
181   DALI_TEST_EQUALS( style1.GetUnderlineThickness(), UNDERLINE_THICKNESS, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
182   DALI_TEST_EQUALS( style1.GetUnderlinePosition(), UNDERLINE_POSITION, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
183
184   DALI_TEST_CHECK( style1.IsShadowEnabled() );
185   DALI_TEST_EQUALS( style1.GetShadowColor(), SHADOW_COLOR, TEST_LOCATION );
186   DALI_TEST_EQUALS( style1.GetShadowOffset(), SHADOW_OFFSET, TEST_LOCATION );
187
188   DALI_TEST_CHECK( style1.IsGlowEnabled() );
189   DALI_TEST_EQUALS( style1.GetGlowColor(), GLOW_COLOR, TEST_LOCATION );
190   DALI_TEST_EQUALS( style1.GetGlowIntensity(), GLOW_INTENSITY, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
191
192   DALI_TEST_CHECK( style1.IsOutlineEnabled() );
193   DALI_TEST_EQUALS( style1.GetOutlineColor(), OUTLINE_COLOR, TEST_LOCATION );
194   DALI_TEST_EQUALS( style1.GetOutlineThickness(), OUTLINE_THICKNESS, TEST_LOCATION );
195
196   DALI_TEST_CHECK( style1.IsGradientEnabled() );
197   DALI_TEST_EQUALS( style1.GetGradientColor(), GRADIENT_COLOR, TEST_LOCATION );
198   DALI_TEST_EQUALS( style1.GetGradientStartPoint(), GRADIENT_START_POINT, TEST_LOCATION );
199   DALI_TEST_EQUALS( style1.GetGradientEndPoint(), GRADIENT_END_POINT, TEST_LOCATION );
200
201   DALI_TEST_CHECK( !style2.IsFontNameDefault() );
202   DALI_TEST_CHECK( !style2.IsFontStyleDefault() );
203   DALI_TEST_CHECK( !style2.IsFontSizeDefault() );
204   DALI_TEST_CHECK( !style2.IsTextColorDefault() );
205   DALI_TEST_CHECK( !style2.IsFontWeightDefault() );
206   DALI_TEST_CHECK( !style2.IsSmoothEdgeDefault() );
207   DALI_TEST_CHECK( !style2.IsItalicsDefault() );
208   DALI_TEST_CHECK( !style2.IsUnderlineDefault() );
209   DALI_TEST_CHECK( !style2.IsShadowDefault() );
210   DALI_TEST_CHECK( !style2.IsGlowDefault() );
211   DALI_TEST_CHECK( !style2.IsOutlineDefault() );
212   DALI_TEST_CHECK( !style2.IsGradientDefault() );
213
214   DALI_TEST_EQUALS( style2.GetFontName(), FONT_FAMILY, TEST_LOCATION );
215   DALI_TEST_EQUALS( style2.GetFontStyle(), FONT_STYLE, TEST_LOCATION );
216   DALI_TEST_EQUALS( style2.GetFontPointSize(), FONT_POINT_SIZE, TEST_LOCATION );
217   DALI_TEST_EQUALS( style2.GetTextColor(), TEXT_COLOR, TEST_LOCATION );
218
219   DALI_TEST_EQUALS( style2.GetWeight(), TEXT_WEIGHT, TEST_LOCATION );
220   DALI_TEST_EQUALS( style2.GetSmoothEdge(), SMOOTH_EDGE, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
221
222   DALI_TEST_CHECK( style2.IsItalicsEnabled() );
223   DALI_TEST_EQUALS( style2.GetItalicsAngle(), ITALICS_ANGLE, TEST_LOCATION );
224
225   DALI_TEST_CHECK( style2.IsUnderlineEnabled() );
226   DALI_TEST_EQUALS( style2.GetUnderlineThickness(), UNDERLINE_THICKNESS, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
227   DALI_TEST_EQUALS( style2.GetUnderlinePosition(), UNDERLINE_POSITION, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
228
229   DALI_TEST_CHECK( style2.IsShadowEnabled() );
230   DALI_TEST_EQUALS( style2.GetShadowColor(), SHADOW_COLOR, TEST_LOCATION );
231   DALI_TEST_EQUALS( style2.GetShadowOffset(), SHADOW_OFFSET, TEST_LOCATION );
232
233   DALI_TEST_CHECK( style2.IsGlowEnabled() );
234   DALI_TEST_EQUALS( style2.GetGlowColor(), GLOW_COLOR, TEST_LOCATION );
235   DALI_TEST_EQUALS( style2.GetGlowIntensity(), GLOW_INTENSITY, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
236
237   DALI_TEST_CHECK( style2.IsOutlineEnabled() );
238   DALI_TEST_EQUALS( style2.GetOutlineColor(), OUTLINE_COLOR, TEST_LOCATION );
239   DALI_TEST_EQUALS( style2.GetOutlineThickness(), OUTLINE_THICKNESS, TEST_LOCATION );
240
241   DALI_TEST_CHECK( style2.IsGradientEnabled() );
242   DALI_TEST_EQUALS( style2.GetGradientColor(), GRADIENT_COLOR, TEST_LOCATION );
243   DALI_TEST_EQUALS( style2.GetGradientStartPoint(), GRADIENT_START_POINT, TEST_LOCATION );
244   DALI_TEST_EQUALS( style2.GetGradientEndPoint(), GRADIENT_END_POINT, TEST_LOCATION );
245
246   END_TEST;
247 }
248
249 int UtcDaliTextStyleAssignmentOperator(void)
250 {
251   tet_infoline(" UtcDaliTextStyleAssignmentOperator ");
252
253   TestApplication application;
254
255   TextStyle style1;
256   TextStyle style2;
257
258   style1.SetFontName( FONT_FAMILY );
259   style1.SetFontStyle( FONT_STYLE );
260   style1.SetFontPointSize( FONT_POINT_SIZE );
261   style1.SetTextColor( TEXT_COLOR );
262
263   style1.SetWeight( TEXT_WEIGHT );
264   style1.SetSmoothEdge( SMOOTH_EDGE );
265
266   style1.SetItalics( ITALICS, ITALICS_ANGLE );
267
268   style1.SetUnderline( UNDERLINE, UNDERLINE_THICKNESS, UNDERLINE_POSITION );
269
270   style1.SetShadow( SHADOW, SHADOW_COLOR, SHADOW_OFFSET, SHADOW_SIZE );
271   style1.SetGlow( GLOW, GLOW_COLOR, GLOW_INTENSITY );
272   style1.SetOutline( OUTLINE, OUTLINE_COLOR, OUTLINE_THICKNESS );
273   style1.SetGradient( GRADIENT, GRADIENT_COLOR, GRADIENT_START_POINT, GRADIENT_END_POINT );
274
275   // Test the copy of all parameters.
276   style2 = style1;
277
278   DALI_TEST_CHECK( !style2.IsFontNameDefault() );
279   DALI_TEST_CHECK( !style2.IsFontStyleDefault() );
280   DALI_TEST_CHECK( !style2.IsFontSizeDefault() );
281   DALI_TEST_CHECK( !style2.IsTextColorDefault() );
282   DALI_TEST_CHECK( !style2.IsFontWeightDefault() );
283   DALI_TEST_CHECK( !style2.IsSmoothEdgeDefault() );
284   DALI_TEST_CHECK( !style2.IsItalicsDefault() );
285   DALI_TEST_CHECK( !style2.IsUnderlineDefault() );
286   DALI_TEST_CHECK( !style2.IsShadowDefault() );
287   DALI_TEST_CHECK( !style2.IsGlowDefault() );
288   DALI_TEST_CHECK( !style2.IsOutlineDefault() );
289   DALI_TEST_CHECK( !style2.IsGradientDefault() );
290
291   DALI_TEST_EQUALS( style2.GetFontName(), FONT_FAMILY, TEST_LOCATION );
292   DALI_TEST_EQUALS( style2.GetFontStyle(), FONT_STYLE, TEST_LOCATION );
293   DALI_TEST_EQUALS( style2.GetFontPointSize(), FONT_POINT_SIZE, TEST_LOCATION );
294   DALI_TEST_EQUALS( style2.GetTextColor(), TEXT_COLOR, TEST_LOCATION );
295
296   DALI_TEST_EQUALS( style2.GetWeight(), TEXT_WEIGHT, TEST_LOCATION );
297   DALI_TEST_EQUALS( style2.GetSmoothEdge(), SMOOTH_EDGE, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
298
299   DALI_TEST_CHECK( style2.IsItalicsEnabled() );
300   DALI_TEST_EQUALS( style2.GetItalicsAngle(), ITALICS_ANGLE, TEST_LOCATION );
301
302   DALI_TEST_CHECK( style2.IsUnderlineEnabled() );
303   DALI_TEST_EQUALS( style2.GetUnderlineThickness(), UNDERLINE_THICKNESS, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
304   DALI_TEST_EQUALS( style2.GetUnderlinePosition(), UNDERLINE_POSITION, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
305
306   DALI_TEST_CHECK( style2.IsShadowEnabled() );
307   DALI_TEST_EQUALS( style2.GetShadowColor(), SHADOW_COLOR, TEST_LOCATION );
308   DALI_TEST_EQUALS( style2.GetShadowOffset(), SHADOW_OFFSET, TEST_LOCATION );
309
310   DALI_TEST_CHECK( style2.IsGlowEnabled() );
311   DALI_TEST_EQUALS( style2.GetGlowColor(), GLOW_COLOR, TEST_LOCATION );
312   DALI_TEST_EQUALS( style2.GetGlowIntensity(), GLOW_INTENSITY, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
313
314   DALI_TEST_CHECK( style2.IsOutlineEnabled() );
315   DALI_TEST_EQUALS( style2.GetOutlineColor(), OUTLINE_COLOR, TEST_LOCATION );
316   DALI_TEST_EQUALS( style2.GetOutlineThickness(), OUTLINE_THICKNESS, TEST_LOCATION );
317
318   DALI_TEST_CHECK( style2.IsGradientEnabled() );
319   DALI_TEST_EQUALS( style2.GetGradientColor(), GRADIENT_COLOR, TEST_LOCATION );
320   DALI_TEST_EQUALS( style2.GetGradientStartPoint(), GRADIENT_START_POINT, TEST_LOCATION );
321   DALI_TEST_EQUALS( style2.GetGradientEndPoint(), GRADIENT_END_POINT, TEST_LOCATION );
322
323   // Test assignment of the same object.
324   const TextStyle& style( style2 );
325
326   style2 = style;
327
328   // Test the assignment of the defaults.
329
330   // Test copy all defaults.
331
332   TextStyle defaultStyle;
333   style2 = defaultStyle;
334
335   DALI_TEST_CHECK( style2.IsFontNameDefault() );
336   DALI_TEST_CHECK( style2.IsFontStyleDefault() );
337   DALI_TEST_CHECK( style2.IsFontSizeDefault() );
338   DALI_TEST_CHECK( style2.IsTextColorDefault() );
339   DALI_TEST_CHECK( style2.IsFontWeightDefault() );
340   DALI_TEST_CHECK( style2.IsSmoothEdgeDefault() );
341   DALI_TEST_CHECK( style2.IsItalicsDefault() );
342   DALI_TEST_CHECK( style2.IsUnderlineDefault() );
343   DALI_TEST_CHECK( style2.IsShadowDefault() );
344   DALI_TEST_CHECK( style2.IsGlowDefault() );
345   DALI_TEST_CHECK( style2.IsOutlineDefault() );
346   DALI_TEST_CHECK( style2.IsGradientDefault() );
347
348   DALI_TEST_EQUALS( style2.GetFontName(), DEFAULT_FONT_NAME_STYLE, TEST_LOCATION );
349   DALI_TEST_EQUALS( style2.GetFontStyle(), DEFAULT_FONT_NAME_STYLE, TEST_LOCATION );
350   DALI_TEST_EQUALS( style2.GetFontPointSize(), DEFAULT_FONT_POINT_SIZE, TEST_LOCATION );
351   DALI_TEST_EQUALS( style2.GetTextColor(), TextStyle::DEFAULT_TEXT_COLOR, TEST_LOCATION );
352
353   DALI_TEST_EQUALS( style2.GetWeight(), TextStyle::DEFAULT_FONT_WEIGHT, TEST_LOCATION );
354   DALI_TEST_EQUALS( style2.GetSmoothEdge(), TextStyle::DEFAULT_SMOOTH_EDGE_DISTANCE_FIELD, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
355
356   DALI_TEST_CHECK( !style2.IsItalicsEnabled() );
357   DALI_TEST_EQUALS( style2.GetItalicsAngle(), TextStyle::DEFAULT_ITALICS_ANGLE, TEST_LOCATION );
358
359   DALI_TEST_CHECK( !style2.IsUnderlineEnabled() );
360   DALI_TEST_EQUALS( style2.GetUnderlineThickness(), TextStyle::DEFAULT_UNDERLINE_THICKNESS, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
361   DALI_TEST_EQUALS( style2.GetUnderlinePosition(), TextStyle::DEFAULT_UNDERLINE_POSITION, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
362
363   DALI_TEST_CHECK( !style2.IsShadowEnabled() );
364   DALI_TEST_EQUALS( style2.GetShadowColor(), TextStyle::DEFAULT_SHADOW_COLOR, TEST_LOCATION );
365   DALI_TEST_EQUALS( style2.GetShadowOffset(), TextStyle::DEFAULT_SHADOW_OFFSET, TEST_LOCATION );
366
367   DALI_TEST_CHECK( !style2.IsGlowEnabled() );
368   DALI_TEST_EQUALS( style2.GetGlowColor(), TextStyle::DEFAULT_GLOW_COLOR, TEST_LOCATION );
369   DALI_TEST_EQUALS( style2.GetGlowIntensity(), TextStyle::DEFAULT_GLOW_INTENSITY, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
370
371   DALI_TEST_CHECK( !style2.IsOutlineEnabled() );
372   DALI_TEST_EQUALS( style2.GetOutlineColor(), TextStyle::DEFAULT_OUTLINE_COLOR, TEST_LOCATION );
373   DALI_TEST_EQUALS( style2.GetOutlineThickness(), TextStyle::DEFAULT_OUTLINE_THICKNESS, TEST_LOCATION );
374
375   DALI_TEST_CHECK( !style2.IsGradientEnabled() );
376   DALI_TEST_EQUALS( style2.GetGradientColor(), TextStyle::DEFAULT_GRADIENT_COLOR, TEST_LOCATION );
377   DALI_TEST_EQUALS( style2.GetGradientStartPoint(), TextStyle::DEFAULT_GRADIENT_START_POINT, TEST_LOCATION );
378   DALI_TEST_EQUALS( style2.GetGradientEndPoint(), TextStyle::DEFAULT_GRADIENT_END_POINT, TEST_LOCATION );
379
380   // Test copy some defaults.
381
382   // set style2 with non defaults.
383   style2 = style1;
384
385   // create a style with all defaults excepd the font name.
386   defaultStyle.SetFontName( FONT_FAMILY );
387
388   // should reset all to defaults except the font name.
389   style2 = defaultStyle;
390
391   DALI_TEST_CHECK( !style2.IsFontNameDefault() );
392   DALI_TEST_CHECK( style2.IsFontStyleDefault() );
393   DALI_TEST_CHECK( style2.IsFontSizeDefault() );
394   DALI_TEST_CHECK( style2.IsTextColorDefault() );
395   DALI_TEST_CHECK( style2.IsFontWeightDefault() );
396   DALI_TEST_CHECK( style2.IsSmoothEdgeDefault() );
397   DALI_TEST_CHECK( style2.IsItalicsDefault() );
398   DALI_TEST_CHECK( style2.IsUnderlineDefault() );
399   DALI_TEST_CHECK( style2.IsShadowDefault() );
400   DALI_TEST_CHECK( style2.IsGlowDefault() );
401   DALI_TEST_CHECK( style2.IsOutlineDefault() );
402   DALI_TEST_CHECK( style2.IsGradientDefault() );
403
404   DALI_TEST_EQUALS( style2.GetFontName(), FONT_FAMILY, TEST_LOCATION );
405   DALI_TEST_EQUALS( style2.GetFontStyle(), DEFAULT_FONT_NAME_STYLE, TEST_LOCATION );
406   DALI_TEST_EQUALS( style2.GetFontPointSize(), DEFAULT_FONT_POINT_SIZE, TEST_LOCATION );
407   DALI_TEST_EQUALS( style2.GetTextColor(), TextStyle::DEFAULT_TEXT_COLOR, TEST_LOCATION );
408
409   DALI_TEST_EQUALS( style2.GetWeight(), TextStyle::DEFAULT_FONT_WEIGHT, TEST_LOCATION );
410   DALI_TEST_EQUALS( style2.GetSmoothEdge(), TextStyle::DEFAULT_SMOOTH_EDGE_DISTANCE_FIELD, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
411
412   DALI_TEST_CHECK( !style2.IsItalicsEnabled() );
413   DALI_TEST_EQUALS( style2.GetItalicsAngle(), TextStyle::DEFAULT_ITALICS_ANGLE, TEST_LOCATION );
414
415   DALI_TEST_CHECK( !style2.IsUnderlineEnabled() );
416   DALI_TEST_EQUALS( style2.GetUnderlineThickness(), TextStyle::DEFAULT_UNDERLINE_THICKNESS, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
417   DALI_TEST_EQUALS( style2.GetUnderlinePosition(), TextStyle::DEFAULT_UNDERLINE_POSITION, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
418
419   DALI_TEST_CHECK( !style2.IsShadowEnabled() );
420   DALI_TEST_EQUALS( style2.GetShadowColor(), TextStyle::DEFAULT_SHADOW_COLOR, TEST_LOCATION );
421   DALI_TEST_EQUALS( style2.GetShadowOffset(), TextStyle::DEFAULT_SHADOW_OFFSET, TEST_LOCATION );
422
423   DALI_TEST_CHECK( !style2.IsGlowEnabled() );
424   DALI_TEST_EQUALS( style2.GetGlowColor(), TextStyle::DEFAULT_GLOW_COLOR, TEST_LOCATION );
425   DALI_TEST_EQUALS( style2.GetGlowIntensity(), TextStyle::DEFAULT_GLOW_INTENSITY, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
426
427   DALI_TEST_CHECK( !style2.IsOutlineEnabled() );
428   DALI_TEST_EQUALS( style2.GetOutlineColor(), TextStyle::DEFAULT_OUTLINE_COLOR, TEST_LOCATION );
429   DALI_TEST_EQUALS( style2.GetOutlineThickness(), TextStyle::DEFAULT_OUTLINE_THICKNESS, TEST_LOCATION );
430
431   DALI_TEST_CHECK( !style2.IsGradientEnabled() );
432   DALI_TEST_EQUALS( style2.GetGradientColor(), TextStyle::DEFAULT_GRADIENT_COLOR, TEST_LOCATION );
433   DALI_TEST_EQUALS( style2.GetGradientStartPoint(), TextStyle::DEFAULT_GRADIENT_START_POINT, TEST_LOCATION );
434   DALI_TEST_EQUALS( style2.GetGradientEndPoint(), TextStyle::DEFAULT_GRADIENT_END_POINT, TEST_LOCATION );
435
436   // reset the text-style to default.
437   defaultStyle = TextStyle();
438
439   // test now the default font name.
440   defaultStyle.SetFontStyle( FONT_STYLE );
441
442   style2 = defaultStyle;
443
444   DALI_TEST_CHECK( style2.IsFontNameDefault() );
445   DALI_TEST_CHECK( !style2.IsFontStyleDefault() );
446   DALI_TEST_CHECK( style2.IsFontSizeDefault() );
447   DALI_TEST_CHECK( style2.IsTextColorDefault() );
448   DALI_TEST_CHECK( style2.IsFontWeightDefault() );
449   DALI_TEST_CHECK( style2.IsSmoothEdgeDefault() );
450   DALI_TEST_CHECK( style2.IsItalicsDefault() );
451   DALI_TEST_CHECK( style2.IsUnderlineDefault() );
452   DALI_TEST_CHECK( style2.IsShadowDefault() );
453   DALI_TEST_CHECK( style2.IsGlowDefault() );
454   DALI_TEST_CHECK( style2.IsOutlineDefault() );
455   DALI_TEST_CHECK( style2.IsGradientDefault() );
456
457   DALI_TEST_EQUALS( style2.GetFontName(), DEFAULT_FONT_NAME_STYLE, TEST_LOCATION );
458   DALI_TEST_EQUALS( style2.GetFontStyle(), FONT_STYLE, TEST_LOCATION );
459   DALI_TEST_EQUALS( style2.GetFontPointSize(), DEFAULT_FONT_POINT_SIZE, TEST_LOCATION );
460   DALI_TEST_EQUALS( style2.GetTextColor(), TextStyle::DEFAULT_TEXT_COLOR, TEST_LOCATION );
461
462   DALI_TEST_EQUALS( style2.GetWeight(), TextStyle::DEFAULT_FONT_WEIGHT, TEST_LOCATION );
463   DALI_TEST_EQUALS( style2.GetSmoothEdge(), TextStyle::DEFAULT_SMOOTH_EDGE_DISTANCE_FIELD, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
464
465   DALI_TEST_CHECK( !style2.IsItalicsEnabled() );
466   DALI_TEST_EQUALS( style2.GetItalicsAngle(), TextStyle::DEFAULT_ITALICS_ANGLE, TEST_LOCATION );
467
468   DALI_TEST_CHECK( !style2.IsUnderlineEnabled() );
469   DALI_TEST_EQUALS( style2.GetUnderlineThickness(), TextStyle::DEFAULT_UNDERLINE_THICKNESS, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
470   DALI_TEST_EQUALS( style2.GetUnderlinePosition(), TextStyle::DEFAULT_UNDERLINE_POSITION, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
471
472   DALI_TEST_CHECK( !style2.IsShadowEnabled() );
473   DALI_TEST_EQUALS( style2.GetShadowColor(), TextStyle::DEFAULT_SHADOW_COLOR, TEST_LOCATION );
474   DALI_TEST_EQUALS( style2.GetShadowOffset(), TextStyle::DEFAULT_SHADOW_OFFSET, TEST_LOCATION );
475
476   DALI_TEST_CHECK( !style2.IsGlowEnabled() );
477   DALI_TEST_EQUALS( style2.GetGlowColor(), TextStyle::DEFAULT_GLOW_COLOR, TEST_LOCATION );
478   DALI_TEST_EQUALS( style2.GetGlowIntensity(), TextStyle::DEFAULT_GLOW_INTENSITY, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
479
480   DALI_TEST_CHECK( !style2.IsOutlineEnabled() );
481   DALI_TEST_EQUALS( style2.GetOutlineColor(), TextStyle::DEFAULT_OUTLINE_COLOR, TEST_LOCATION );
482   DALI_TEST_EQUALS( style2.GetOutlineThickness(), TextStyle::DEFAULT_OUTLINE_THICKNESS, TEST_LOCATION );
483
484   DALI_TEST_CHECK( !style2.IsGradientEnabled() );
485   DALI_TEST_EQUALS( style2.GetGradientColor(), TextStyle::DEFAULT_GRADIENT_COLOR, TEST_LOCATION );
486   DALI_TEST_EQUALS( style2.GetGradientStartPoint(), TextStyle::DEFAULT_GRADIENT_START_POINT, TEST_LOCATION );
487   DALI_TEST_EQUALS( style2.GetGradientEndPoint(), TextStyle::DEFAULT_GRADIENT_END_POINT, TEST_LOCATION );
488
489   END_TEST;
490 }
491
492 int UtcDaliTextStyleComparisonOperator(void)
493 {
494   tet_infoline(" UtcDaliTextStyleComparisonOperator ");
495
496   TestApplication application;
497
498   TextStyle style1;
499   TextStyle style2;
500
501   // Compares equality and inequality operators
502
503   // Compare two defaults.
504
505   DALI_TEST_CHECK( style1 == style2 );
506   DALI_TEST_CHECK( !( style1 != style2 ) );
507
508   // Compare with defaults.
509
510   style1.SetFontName( FONT_FAMILY );
511
512   DALI_TEST_CHECK( !( style1 == style2 ) );
513   DALI_TEST_CHECK( style1 != style2 );
514
515   style1 = TextStyle();
516   style2.SetFontName( FONT_FAMILY );
517
518   DALI_TEST_CHECK( !( style1 == style2 ) );
519   DALI_TEST_CHECK( style1 != style2 );
520
521   // Compare non defaults.
522
523   // Compare different flags
524
525   style1.SetFontName( FONT_FAMILY );
526   style2.SetFontStyle( FONT_STYLE );
527   style1.SetFontPointSize( FONT_POINT_SIZE );
528   style2.SetTextColor( TEXT_COLOR );
529
530   style1.SetWeight( TEXT_WEIGHT );
531   style2.SetSmoothEdge( SMOOTH_EDGE );
532
533   style1.SetItalics( ITALICS, ITALICS_ANGLE );
534
535   style2.SetUnderline( UNDERLINE, UNDERLINE_THICKNESS, UNDERLINE_POSITION );
536
537   style1.SetShadow( SHADOW, SHADOW_COLOR, SHADOW_OFFSET, SHADOW_SIZE );
538   style2.SetGlow( GLOW, GLOW_COLOR, GLOW_INTENSITY );
539   style1.SetOutline( OUTLINE, OUTLINE_COLOR, OUTLINE_THICKNESS );
540   style2.SetGradient( GRADIENT, GRADIENT_COLOR, GRADIENT_START_POINT, GRADIENT_END_POINT );
541
542   DALI_TEST_CHECK( !( style1 == style2 ) );
543   DALI_TEST_CHECK( style1 != style2 );
544
545   // Compare same styles
546   style1 = style2;
547
548   DALI_TEST_CHECK( style1 == style2 );
549   DALI_TEST_CHECK( !( style1 != style2 ) );
550
551   // Compare same flags but different values
552   style1.SetTextColor( Color::GREEN );
553
554   DALI_TEST_CHECK( !( style1 == style2 ) );
555   DALI_TEST_CHECK( style1 != style2 );
556
557   END_TEST;
558 }
559
560 int UtcDaliTextStyleCopy(void)
561 {
562   tet_infoline(" UtcDaliTextStyleCopy ");
563
564   TestApplication application;
565
566   TextStyle style;
567
568   // Set a style different than default.
569   TextStyle style2;
570   style2.SetFontName( FONT_FAMILY );
571   style2.SetFontStyle( FONT_STYLE );
572   style2.SetFontPointSize( FONT_POINT_SIZE );
573   style2.SetTextColor( TEXT_COLOR );
574
575   style2.SetWeight( TEXT_WEIGHT );
576   style2.SetSmoothEdge( SMOOTH_EDGE );
577
578   style2.SetItalics( ITALICS, ITALICS_ANGLE );
579   style2.SetUnderline( UNDERLINE, UNDERLINE_THICKNESS, UNDERLINE_POSITION );
580   style2.SetShadow( SHADOW, SHADOW_COLOR, SHADOW_OFFSET, SHADOW_SIZE );
581   style2.SetGlow( GLOW, GLOW_COLOR, GLOW_INTENSITY );
582   style2.SetOutline( OUTLINE, OUTLINE_COLOR, OUTLINE_THICKNESS );
583   style2.SetGradient( GRADIENT, GRADIENT_COLOR, GRADIENT_START_POINT, GRADIENT_END_POINT );
584
585   // Test not to copy the same object. To increase coverage.
586
587   const TextStyle& same( style2 );
588
589   style2.Copy( same );
590
591   DALI_TEST_CHECK( same == style2 );
592
593   // Test mask.
594
595   // All values are copied.
596   style.Copy( style2 );
597
598   DALI_TEST_CHECK( style == style2 );
599
600   // Copy the default
601   TextStyle defaultStyle;
602
603   style.Copy( defaultStyle );
604
605   // Test FONT
606   style = TextStyle();
607
608   style.Copy( style2, TextStyle::FONT );
609
610   DALI_TEST_EQUALS( style.GetFontName(), FONT_FAMILY, TEST_LOCATION );
611
612   style.Copy( defaultStyle, TextStyle::FONT );
613
614   DALI_TEST_EQUALS( style.GetFontName(), DEFAULT_FONT_NAME_STYLE, TEST_LOCATION );
615
616   // Test STYLE
617   style = TextStyle();
618
619   style.Copy( style2, TextStyle::STYLE );
620
621   DALI_TEST_EQUALS( style.GetFontStyle(), FONT_STYLE, TEST_LOCATION );
622
623   style.Copy( defaultStyle, TextStyle::STYLE );
624
625   DALI_TEST_EQUALS( style.GetFontStyle(), DEFAULT_FONT_NAME_STYLE, TEST_LOCATION );
626
627   // Test SIZE
628   style = TextStyle();
629
630   style.Copy( style2, TextStyle::SIZE );
631
632   DALI_TEST_EQUALS( style.GetFontPointSize(), FONT_POINT_SIZE, TEST_LOCATION );
633
634   style.Copy( defaultStyle, TextStyle::SIZE );
635
636   DALI_TEST_EQUALS( style.GetFontPointSize(), PointSize( 0.f ), TEST_LOCATION );
637
638   // Test COLOR
639   style = TextStyle();
640
641   style.Copy( style2, TextStyle::COLOR );
642
643   DALI_TEST_EQUALS( style.GetTextColor(), TEXT_COLOR, TEST_LOCATION );
644
645   style.Copy( defaultStyle, TextStyle::COLOR );
646
647   DALI_TEST_EQUALS( style.GetTextColor(), TextStyle::DEFAULT_TEXT_COLOR, TEST_LOCATION );
648
649   // Test WEIGHT
650   style = TextStyle();
651
652   style.Copy( style2, TextStyle::WEIGHT );
653
654   DALI_TEST_EQUALS( style.GetWeight(), TEXT_WEIGHT, TEST_LOCATION );
655
656   style.Copy( defaultStyle, TextStyle::WEIGHT );
657
658   DALI_TEST_EQUALS( style.GetWeight(), TextStyle::DEFAULT_FONT_WEIGHT, TEST_LOCATION );
659
660   // Test SMOOTH
661   style = TextStyle();
662
663   style.Copy( style2, TextStyle::SMOOTH );
664
665   DALI_TEST_EQUALS( style.GetSmoothEdge(), SMOOTH_EDGE, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
666
667   style.Copy( defaultStyle, TextStyle::SMOOTH );
668
669   DALI_TEST_EQUALS( style.GetSmoothEdge(), TextStyle::DEFAULT_SMOOTH_EDGE_DISTANCE_FIELD, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
670
671   // Test ITALICS
672   style = TextStyle();
673
674   style.Copy( style2, TextStyle::ITALICS );
675
676   DALI_TEST_CHECK( style.IsItalicsEnabled() );
677   DALI_TEST_EQUALS( style.GetItalicsAngle(), ITALICS_ANGLE, TEST_LOCATION );
678
679   style.Copy( defaultStyle, TextStyle::ITALICS );
680
681   DALI_TEST_CHECK( !style.IsItalicsEnabled() );
682   DALI_TEST_EQUALS( style.GetItalicsAngle(), TextStyle::DEFAULT_ITALICS_ANGLE, TEST_LOCATION );
683
684   // Test UNDERLINE
685   style = TextStyle();
686
687   style.Copy( style2, TextStyle::UNDERLINE );
688
689   DALI_TEST_CHECK( style.IsUnderlineEnabled() );
690   DALI_TEST_EQUALS( style.GetUnderlineThickness(), UNDERLINE_THICKNESS, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
691   DALI_TEST_EQUALS( style.GetUnderlinePosition(), UNDERLINE_POSITION, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
692
693   style.Copy( defaultStyle, TextStyle::UNDERLINE );
694
695   DALI_TEST_CHECK( !style.IsUnderlineEnabled() );
696   DALI_TEST_EQUALS( style.GetUnderlineThickness(), TextStyle::DEFAULT_UNDERLINE_THICKNESS, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
697   DALI_TEST_EQUALS( style.GetUnderlinePosition(), TextStyle::DEFAULT_UNDERLINE_POSITION, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
698
699   // Test SHADOW
700   style = TextStyle();
701
702   style.Copy( style2, TextStyle::SHADOW );
703
704   DALI_TEST_CHECK( style.IsShadowEnabled() );
705   DALI_TEST_EQUALS( style.GetShadowColor(), SHADOW_COLOR, TEST_LOCATION );
706   DALI_TEST_EQUALS( style.GetShadowOffset(), SHADOW_OFFSET, TEST_LOCATION );
707   DALI_TEST_EQUALS( style.GetShadowSize(), SHADOW_SIZE, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
708
709   style.Copy( defaultStyle, TextStyle::SHADOW );
710
711   DALI_TEST_CHECK( !style.IsShadowEnabled() );
712   DALI_TEST_EQUALS( style.GetShadowColor(), TextStyle::DEFAULT_SHADOW_COLOR, TEST_LOCATION );
713   DALI_TEST_EQUALS( style.GetShadowOffset(), TextStyle::DEFAULT_SHADOW_OFFSET, TEST_LOCATION );
714   DALI_TEST_EQUALS( style.GetShadowSize(), TextStyle::DEFAULT_SHADOW_SIZE, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
715
716   // Test GLOW
717   style = TextStyle();
718
719   style.Copy( style2, TextStyle::GLOW );
720
721   DALI_TEST_CHECK( style.IsGlowEnabled() );
722   DALI_TEST_EQUALS( style.GetGlowColor(), GLOW_COLOR, TEST_LOCATION );
723   DALI_TEST_EQUALS( style.GetGlowIntensity(), GLOW_INTENSITY, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
724
725   style.Copy( defaultStyle, TextStyle::GLOW );
726
727   DALI_TEST_CHECK( !style.IsGlowEnabled() );
728   DALI_TEST_EQUALS( style.GetGlowColor(), TextStyle::DEFAULT_GLOW_COLOR, TEST_LOCATION );
729   DALI_TEST_EQUALS( style.GetGlowIntensity(), TextStyle::DEFAULT_GLOW_INTENSITY, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
730
731   // Test OUTLINE
732   style = TextStyle();
733
734   style.Copy( style2, TextStyle::OUTLINE );
735
736   DALI_TEST_CHECK( style.IsOutlineEnabled() );
737   DALI_TEST_EQUALS( style.GetOutlineColor(), OUTLINE_COLOR, TEST_LOCATION );
738   DALI_TEST_EQUALS( style.GetOutlineThickness(), OUTLINE_THICKNESS, TEST_LOCATION );
739
740   style.Copy( defaultStyle, TextStyle::OUTLINE );
741
742   DALI_TEST_CHECK( !style.IsOutlineEnabled() );
743   DALI_TEST_EQUALS( style.GetOutlineColor(), TextStyle::DEFAULT_OUTLINE_COLOR, TEST_LOCATION );
744   DALI_TEST_EQUALS( style.GetOutlineThickness(), TextStyle::DEFAULT_OUTLINE_THICKNESS, TEST_LOCATION );
745
746   // Test GRADIENT
747   style = TextStyle();
748
749   style.Copy( style2, TextStyle::GRADIENT );
750
751   DALI_TEST_CHECK( style.IsGradientEnabled() );
752   DALI_TEST_EQUALS( style.GetGradientColor(), GRADIENT_COLOR, TEST_LOCATION );
753   DALI_TEST_EQUALS( style.GetGradientStartPoint(), GRADIENT_START_POINT, TEST_LOCATION );
754   DALI_TEST_EQUALS( style.GetGradientEndPoint(), GRADIENT_END_POINT, TEST_LOCATION );
755
756   style.Copy( defaultStyle, TextStyle::GRADIENT );
757
758   DALI_TEST_CHECK( !style.IsGradientEnabled() );
759   DALI_TEST_EQUALS( style.GetGradientColor(), TextStyle::DEFAULT_GRADIENT_COLOR, TEST_LOCATION );
760   DALI_TEST_EQUALS( style.GetGradientStartPoint(), TextStyle::DEFAULT_GRADIENT_START_POINT, TEST_LOCATION );
761   DALI_TEST_EQUALS( style.GetGradientEndPoint(), TextStyle::DEFAULT_GRADIENT_END_POINT, TEST_LOCATION );
762
763   // Copy to a default.
764   defaultStyle.Copy( style2 );
765   DALI_TEST_CHECK( defaultStyle ==  style2);
766
767   // Copy from default.
768   defaultStyle = TextStyle();
769
770   defaultStyle.SetItalics( ITALICS, ITALICS_ANGLE );
771   defaultStyle.SetUnderline( UNDERLINE, UNDERLINE_THICKNESS, UNDERLINE_POSITION );
772   defaultStyle.SetShadow( SHADOW, SHADOW_COLOR, SHADOW_OFFSET, SHADOW_SIZE );
773   defaultStyle.SetGlow( GLOW, GLOW_COLOR, GLOW_INTENSITY );
774   defaultStyle.SetOutline( OUTLINE, OUTLINE_COLOR, OUTLINE_THICKNESS );
775   defaultStyle.SetGradient( GRADIENT, GRADIENT_COLOR, GRADIENT_START_POINT, GRADIENT_END_POINT );
776
777   // Copy the default values
778   style2.Copy( defaultStyle, static_cast<TextStyle::Mask>( TextStyle::FONT      |
779                                                            TextStyle::STYLE     |
780                                                            TextStyle::SIZE      |
781                                                            TextStyle::COLOR     |
782                                                            TextStyle::WEIGHT    |
783                                                            TextStyle::SMOOTH ) );
784
785   defaultStyle = TextStyle();
786
787   defaultStyle.SetFontName( FONT_FAMILY );
788   defaultStyle.SetFontStyle( FONT_STYLE );
789   defaultStyle.SetFontPointSize( FONT_POINT_SIZE );
790   defaultStyle.SetTextColor( TEXT_COLOR );
791   defaultStyle.SetWeight( TEXT_WEIGHT );
792   defaultStyle.SetSmoothEdge( SMOOTH_EDGE );
793
794   // Copy the default values
795   style2.Copy( defaultStyle, static_cast<TextStyle::Mask>( TextStyle::ITALICS   |
796                                                            TextStyle::UNDERLINE |
797                                                            TextStyle::SHADOW    |
798                                                            TextStyle::GLOW      |
799                                                            TextStyle::OUTLINE   |
800                                                            TextStyle::GRADIENT ) );
801
802   defaultStyle = TextStyle();
803
804   DALI_TEST_CHECK( defaultStyle == style2 );
805
806   END_TEST;
807 }
808
809 int UtcDaliTextStyleReset(void)
810 {
811   tet_infoline(" UtcDaliTextStyleReset ");
812
813   TestApplication application;
814
815   const TextStyle defaultStyle;
816
817   // Reset a default.
818   TextStyle style;
819
820   style.Reset();
821
822   DALI_TEST_CHECK( defaultStyle == style );
823
824   // Reset NONE
825   style.Reset( TextStyle::NONE );
826
827   DALI_TEST_CHECK( defaultStyle == style );
828
829   // Reset ALL
830   TextStyle style2;
831   style2.SetFontName( FONT_FAMILY );
832   style2.SetFontStyle( FONT_STYLE );
833   style2.SetFontPointSize( FONT_POINT_SIZE );
834   style2.SetTextColor( TEXT_COLOR );
835
836   style2.SetWeight( TEXT_WEIGHT );
837   style2.SetSmoothEdge( SMOOTH_EDGE );
838
839   style2.SetItalics( ITALICS, ITALICS_ANGLE );
840   style2.SetUnderline( UNDERLINE, UNDERLINE_THICKNESS, UNDERLINE_POSITION );
841   style2.SetShadow( SHADOW, SHADOW_COLOR, SHADOW_OFFSET, SHADOW_SIZE );
842   style2.SetGlow( GLOW, GLOW_COLOR, GLOW_INTENSITY );
843   style2.SetOutline( OUTLINE, OUTLINE_COLOR, OUTLINE_THICKNESS );
844   style2.SetGradient( GRADIENT, GRADIENT_COLOR, GRADIENT_START_POINT, GRADIENT_END_POINT );
845
846   style2.Reset( TextStyle::ALL );
847
848   DALI_TEST_CHECK( defaultStyle == style2 );
849
850   // Set all parameters
851   style2.SetFontName( FONT_FAMILY );
852   style2.SetFontStyle( FONT_STYLE );
853   style2.SetFontPointSize( FONT_POINT_SIZE );
854   style2.SetTextColor( TEXT_COLOR );
855
856   style2.SetWeight( TEXT_WEIGHT );
857   style2.SetSmoothEdge( SMOOTH_EDGE );
858
859   style2.SetItalics( ITALICS, ITALICS_ANGLE );
860   style2.SetUnderline( UNDERLINE, UNDERLINE_THICKNESS, UNDERLINE_POSITION );
861   style2.SetShadow( SHADOW, SHADOW_COLOR, SHADOW_OFFSET, SHADOW_SIZE );
862   style2.SetGlow( GLOW, GLOW_COLOR, GLOW_INTENSITY );
863   style2.SetOutline( OUTLINE, OUTLINE_COLOR, OUTLINE_THICKNESS );
864   style2.SetGradient( GRADIENT, GRADIENT_COLOR, GRADIENT_START_POINT, GRADIENT_END_POINT );
865
866   // Reset FONT
867   style2.Reset( TextStyle::FONT );
868
869   DALI_TEST_CHECK( style2.IsFontNameDefault() );
870   DALI_TEST_EQUALS( style2.GetFontName(), DEFAULT_FONT_NAME_STYLE, TEST_LOCATION );
871
872   // Reset STYLE
873   style2.Reset( TextStyle::STYLE );
874
875   DALI_TEST_CHECK( style2.IsFontStyleDefault() );
876   DALI_TEST_EQUALS( style2.GetFontStyle(), DEFAULT_FONT_NAME_STYLE, TEST_LOCATION );
877
878   // Reset SIZE
879   style2.Reset( TextStyle::SIZE );
880
881   DALI_TEST_CHECK( style2.IsFontSizeDefault() );
882   DALI_TEST_EQUALS( style2.GetFontPointSize(), DEFAULT_FONT_POINT_SIZE, TEST_LOCATION );
883
884   // Reset COLOR
885   style2.Reset( TextStyle::COLOR );
886
887   DALI_TEST_CHECK( style2.IsTextColorDefault() );
888   DALI_TEST_EQUALS( style2.GetTextColor(), TextStyle::DEFAULT_TEXT_COLOR, TEST_LOCATION );
889
890   // Reset WEIGHT
891   style2.Reset( TextStyle::WEIGHT );
892
893   DALI_TEST_CHECK( style2.IsFontWeightDefault() );
894   DALI_TEST_EQUALS( style2.GetWeight(), TextStyle::DEFAULT_FONT_WEIGHT, TEST_LOCATION );
895
896   // Reset SMOOTH
897   style2.Reset( TextStyle::SMOOTH );
898
899   DALI_TEST_CHECK( style2.IsSmoothEdgeDefault() );
900   DALI_TEST_EQUALS( style2.GetSmoothEdge(), TextStyle::DEFAULT_SMOOTH_EDGE_DISTANCE_FIELD, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
901
902   // Reset ITALICS
903   style2.Reset( TextStyle::ITALICS );
904
905   DALI_TEST_CHECK( style2.IsItalicsDefault() );
906   DALI_TEST_CHECK( !style2.IsItalicsEnabled() );
907   DALI_TEST_EQUALS( style2.GetItalicsAngle(), TextStyle::DEFAULT_ITALICS_ANGLE, TEST_LOCATION );
908
909   // Reset UNDERLINE
910   style2.Reset( TextStyle::UNDERLINE );
911
912   DALI_TEST_CHECK( style2.IsUnderlineDefault() );
913   DALI_TEST_CHECK( !style2.IsUnderlineEnabled() );
914   DALI_TEST_EQUALS( style2.GetUnderlineThickness(), TextStyle::DEFAULT_UNDERLINE_THICKNESS, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
915   DALI_TEST_EQUALS( style2.GetUnderlinePosition(), TextStyle::DEFAULT_UNDERLINE_POSITION, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
916
917   // Reset SHADOW
918   style2.Reset( TextStyle::SHADOW );
919
920   DALI_TEST_CHECK( style2.IsShadowDefault() );
921   DALI_TEST_CHECK( !style2.IsShadowEnabled() );
922   DALI_TEST_EQUALS( style2.GetShadowColor(), TextStyle::DEFAULT_SHADOW_COLOR, TEST_LOCATION );
923   DALI_TEST_EQUALS( style2.GetShadowOffset(), TextStyle::DEFAULT_SHADOW_OFFSET, TEST_LOCATION );
924   DALI_TEST_EQUALS( style2.GetShadowSize(), TextStyle::DEFAULT_SHADOW_SIZE, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
925
926   // Reset GLOW
927   style2.Reset( TextStyle::GLOW );
928
929   DALI_TEST_CHECK( style2.IsGlowDefault() );
930   DALI_TEST_CHECK( !style2.IsGlowEnabled() );
931   DALI_TEST_EQUALS( style2.GetGlowColor(), TextStyle::DEFAULT_GLOW_COLOR, TEST_LOCATION );
932   DALI_TEST_EQUALS( style2.GetGlowIntensity(), TextStyle::DEFAULT_GLOW_INTENSITY, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
933
934   // Reset OUTLINE
935   style2.Reset( TextStyle::OUTLINE );
936
937   DALI_TEST_CHECK( style2.IsOutlineDefault() );
938   DALI_TEST_CHECK( !style2.IsOutlineEnabled() );
939   DALI_TEST_EQUALS( style2.GetOutlineColor(), TextStyle::DEFAULT_OUTLINE_COLOR, TEST_LOCATION );
940   DALI_TEST_EQUALS( style2.GetOutlineThickness(), TextStyle::DEFAULT_OUTLINE_THICKNESS, TEST_LOCATION );
941
942   // Reset GRADIENT
943   style2.Reset( TextStyle::GRADIENT );
944
945   DALI_TEST_CHECK( style2.IsGradientDefault() );
946   DALI_TEST_CHECK( !style2.IsGradientEnabled() );
947   DALI_TEST_EQUALS( style2.GetGradientColor(), TextStyle::DEFAULT_GRADIENT_COLOR, TEST_LOCATION );
948   DALI_TEST_EQUALS( style2.GetGradientStartPoint(), TextStyle::DEFAULT_GRADIENT_START_POINT, TEST_LOCATION );
949   DALI_TEST_EQUALS( style2.GetGradientEndPoint(), TextStyle::DEFAULT_GRADIENT_END_POINT, TEST_LOCATION );
950
951
952   // Added to increase coverage.
953
954   {
955   // Reset the font name when there is another parameter of a different struct.
956   // Test when the struct storing the font name is in the last position of the vector and when is not.
957
958   TextStyle nameStyle;
959
960   nameStyle.SetFontName( FONT_FAMILY );
961   nameStyle.SetGradient( GRADIENT, GRADIENT_COLOR, GRADIENT_START_POINT, GRADIENT_END_POINT );
962   nameStyle.Reset( TextStyle::FONT );
963
964   DALI_TEST_EQUALS( nameStyle.GetFontName(), DEFAULT_FONT_NAME_STYLE, TEST_LOCATION );
965
966   nameStyle.SetFontName( FONT_FAMILY );
967   nameStyle.Reset( TextStyle::FONT );
968
969   DALI_TEST_EQUALS( nameStyle.GetFontName(), DEFAULT_FONT_NAME_STYLE, TEST_LOCATION );
970   }
971
972   {
973   // Reset the font style when there is another parameter of a different struct.
974   // Test when the struct storing the font style is in the last position of the vector and when is not.
975
976   TextStyle styleStyle;
977
978   styleStyle.SetFontStyle( FONT_STYLE );
979   styleStyle.SetGradient( GRADIENT, GRADIENT_COLOR, GRADIENT_START_POINT, GRADIENT_END_POINT );
980   styleStyle.Reset( TextStyle::STYLE );
981
982   DALI_TEST_EQUALS( styleStyle.GetFontStyle(), DEFAULT_FONT_NAME_STYLE, TEST_LOCATION );
983
984   styleStyle.SetFontStyle( FONT_STYLE );
985   styleStyle.Reset( TextStyle::STYLE );
986
987   DALI_TEST_EQUALS( styleStyle.GetFontStyle(), DEFAULT_FONT_NAME_STYLE, TEST_LOCATION );
988   }
989
990   {
991   // Reset the font size when there is another parameter of a different struct.
992   // Test when the struct storing the font size is in the last position of the vector and when is not.
993
994   TextStyle sizeStyle;
995
996   sizeStyle.SetFontPointSize( FONT_POINT_SIZE );
997   sizeStyle.SetGradient( GRADIENT, GRADIENT_COLOR, GRADIENT_START_POINT, GRADIENT_END_POINT );
998   sizeStyle.Reset( TextStyle::SIZE );
999
1000   DALI_TEST_EQUALS( sizeStyle.GetFontPointSize(), DEFAULT_FONT_POINT_SIZE, TEST_LOCATION );
1001
1002   sizeStyle.SetFontPointSize( FONT_POINT_SIZE );
1003   sizeStyle.Reset( TextStyle::SIZE );
1004
1005   DALI_TEST_EQUALS( sizeStyle.GetFontPointSize(), DEFAULT_FONT_POINT_SIZE, TEST_LOCATION );
1006   }
1007
1008   {
1009   // Reset the text color when there is another parameter of a different struct.
1010   // Test when the struct storing the text color is in the last position of the vector and when is not.
1011
1012   TextStyle colorStyle;
1013
1014   colorStyle.SetTextColor( TEXT_COLOR );
1015   colorStyle.SetGradient( GRADIENT, GRADIENT_COLOR, GRADIENT_START_POINT, GRADIENT_END_POINT );
1016   colorStyle.Reset( TextStyle::COLOR );
1017
1018   DALI_TEST_EQUALS( colorStyle.GetTextColor(), TextStyle::DEFAULT_TEXT_COLOR, TEST_LOCATION );
1019
1020   colorStyle.SetTextColor( TEXT_COLOR );
1021   colorStyle.Reset( TextStyle::COLOR );
1022
1023   DALI_TEST_EQUALS( colorStyle.GetTextColor(), TextStyle::DEFAULT_TEXT_COLOR, TEST_LOCATION );
1024   }
1025
1026   {
1027   // Reset the text weight when there is another parameter of a different struct.
1028   // Test when the struct storing the text weight is in the last position of the vector and when is not.
1029
1030   TextStyle weightStyle;
1031
1032   weightStyle.SetWeight( TEXT_WEIGHT );
1033   weightStyle.SetGradient( GRADIENT, GRADIENT_COLOR, GRADIENT_START_POINT, GRADIENT_END_POINT );
1034   weightStyle.Reset( TextStyle::WEIGHT );
1035
1036   DALI_TEST_EQUALS( weightStyle.GetWeight(), TextStyle::DEFAULT_FONT_WEIGHT, TEST_LOCATION );
1037
1038   weightStyle.SetWeight( TEXT_WEIGHT );
1039   weightStyle.Reset( TextStyle::WEIGHT );
1040
1041   DALI_TEST_EQUALS( weightStyle.GetWeight(), TextStyle::DEFAULT_FONT_WEIGHT, TEST_LOCATION );
1042   }
1043
1044   {
1045   // Reset the smooth edge when there is another parameter of a different struct.
1046   // Test when the struct storing the smooth edge is in the last position of the vector and when is not.
1047
1048   TextStyle smoothStyle;
1049
1050   smoothStyle.SetSmoothEdge( SMOOTH_EDGE );
1051   smoothStyle.SetGradient( GRADIENT, GRADIENT_COLOR, GRADIENT_START_POINT, GRADIENT_END_POINT );
1052   smoothStyle.Reset( TextStyle::SMOOTH );
1053
1054   DALI_TEST_EQUALS( smoothStyle.GetSmoothEdge(), TextStyle::DEFAULT_SMOOTH_EDGE_DISTANCE_FIELD, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
1055
1056   smoothStyle.SetSmoothEdge( SMOOTH_EDGE );
1057   smoothStyle.Reset( TextStyle::SMOOTH );
1058
1059   DALI_TEST_EQUALS( smoothStyle.GetSmoothEdge(), TextStyle::DEFAULT_SMOOTH_EDGE_DISTANCE_FIELD, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
1060   }
1061
1062   {
1063   // Reset the italics when there is another parameter of a different struct.
1064   // Test when the struct storing the italics is in the last position of the vector and when is not.
1065
1066   TextStyle italicsStyle;
1067
1068   italicsStyle.SetItalics( ITALICS, ITALICS_ANGLE );
1069   italicsStyle.SetGradient( GRADIENT, GRADIENT_COLOR, GRADIENT_START_POINT, GRADIENT_END_POINT );
1070   italicsStyle.Reset( TextStyle::ITALICS );
1071
1072   DALI_TEST_EQUALS( italicsStyle.GetItalicsAngle(), TextStyle::DEFAULT_ITALICS_ANGLE, TEST_LOCATION );
1073
1074   italicsStyle.SetItalics( ITALICS, ITALICS_ANGLE );
1075   italicsStyle.Reset( TextStyle::ITALICS );
1076
1077   DALI_TEST_EQUALS( italicsStyle.GetItalicsAngle(), TextStyle::DEFAULT_ITALICS_ANGLE, TEST_LOCATION );
1078   }
1079
1080   {
1081   // Reset the underline when there is another parameter of a different struct.
1082   // Test when the struct storing the underline is in the last position of the vector and when is not.
1083
1084   TextStyle underlineStyle;
1085
1086   underlineStyle.SetUnderline( UNDERLINE, UNDERLINE_THICKNESS, UNDERLINE_POSITION );
1087   underlineStyle.SetGradient( GRADIENT, GRADIENT_COLOR, GRADIENT_START_POINT, GRADIENT_END_POINT );
1088   underlineStyle.Reset( TextStyle::UNDERLINE );
1089
1090   DALI_TEST_EQUALS( underlineStyle.GetUnderlineThickness(), TextStyle::DEFAULT_UNDERLINE_THICKNESS, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
1091   DALI_TEST_EQUALS( underlineStyle.GetUnderlinePosition(), TextStyle::DEFAULT_UNDERLINE_POSITION, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
1092
1093   underlineStyle.SetUnderline( UNDERLINE, UNDERLINE_THICKNESS, UNDERLINE_POSITION );
1094   underlineStyle.Reset( TextStyle::UNDERLINE );
1095
1096   DALI_TEST_EQUALS( underlineStyle.GetUnderlineThickness(), TextStyle::DEFAULT_UNDERLINE_THICKNESS, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
1097   DALI_TEST_EQUALS( underlineStyle.GetUnderlinePosition(), TextStyle::DEFAULT_UNDERLINE_POSITION, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
1098   }
1099
1100
1101
1102
1103
1104   {
1105   // Reset the shadow when there is another parameter of a different struct.
1106   // Test when the struct storing the shadow is in the last position of the vector and when is not.
1107
1108   TextStyle shadowStyle;
1109
1110   shadowStyle.SetShadow( SHADOW, SHADOW_COLOR, SHADOW_OFFSET, SHADOW_SIZE );
1111   shadowStyle.SetGradient( GRADIENT, GRADIENT_COLOR, GRADIENT_START_POINT, GRADIENT_END_POINT );
1112   shadowStyle.Reset( TextStyle::SHADOW );
1113
1114   DALI_TEST_CHECK( shadowStyle.IsShadowDefault() );
1115
1116   shadowStyle.SetShadow( SHADOW, SHADOW_COLOR, SHADOW_OFFSET, SHADOW_SIZE );
1117   shadowStyle.Reset( TextStyle::SHADOW );
1118
1119   DALI_TEST_CHECK( shadowStyle.IsShadowDefault() );
1120 }
1121
1122   {
1123   // Reset the glow when there is another parameter of a different struct.
1124   // Test when the struct storing the glow is in the last position of the vector and when is not.
1125
1126   TextStyle glowStyle;
1127
1128   glowStyle.SetGlow( GLOW, GLOW_COLOR, GLOW_INTENSITY );
1129   glowStyle.SetGradient( GRADIENT, GRADIENT_COLOR, GRADIENT_START_POINT, GRADIENT_END_POINT );
1130   glowStyle.Reset( TextStyle::GLOW );
1131
1132   DALI_TEST_CHECK( glowStyle.IsGlowDefault() );
1133
1134   glowStyle.SetGlow( GLOW, GLOW_COLOR, GLOW_INTENSITY );
1135   glowStyle.Reset( TextStyle::GLOW );
1136
1137   DALI_TEST_CHECK( glowStyle.IsGlowDefault() );
1138   }
1139
1140   {
1141   // Reset the outline when there is another parameter of a different struct.
1142   // Test when the struct storing the outline is in the last position of the vector and when is not.
1143
1144   TextStyle outlineStyle;
1145
1146   outlineStyle.SetOutline( OUTLINE, OUTLINE_COLOR, OUTLINE_THICKNESS );
1147   outlineStyle.SetGradient( GRADIENT, GRADIENT_COLOR, GRADIENT_START_POINT, GRADIENT_END_POINT );
1148   outlineStyle.Reset( TextStyle::OUTLINE );
1149
1150   DALI_TEST_CHECK( outlineStyle.IsOutlineDefault() );
1151
1152   outlineStyle.SetOutline( OUTLINE, OUTLINE_COLOR, OUTLINE_THICKNESS );
1153   outlineStyle.Reset( TextStyle::OUTLINE );
1154
1155   DALI_TEST_CHECK( outlineStyle.IsOutlineDefault() );
1156   }
1157
1158   {
1159   // Reset the gradient when there is another parameter of a different struct.
1160   // Test when the struct storing the gradient is in the last position of the vector and when is not.
1161
1162   TextStyle gradientStyle;
1163
1164   gradientStyle.SetGradient( GRADIENT, GRADIENT_COLOR, GRADIENT_START_POINT, GRADIENT_END_POINT );
1165   gradientStyle.SetOutline( OUTLINE, OUTLINE_COLOR, OUTLINE_THICKNESS );
1166   gradientStyle.Reset( TextStyle::GRADIENT );
1167
1168   DALI_TEST_CHECK( gradientStyle.IsGradientDefault() );
1169
1170   gradientStyle.SetGradient( GRADIENT, GRADIENT_COLOR, GRADIENT_START_POINT, GRADIENT_END_POINT );
1171   gradientStyle.Reset( TextStyle::GRADIENT );
1172
1173   DALI_TEST_CHECK( gradientStyle.IsGradientDefault() );
1174   }
1175
1176   END_TEST;
1177 }
1178
1179 int UtcDaliTextStyleSetGetFontName(void)
1180 {
1181   tet_infoline(" UtcDaliTextStyleSetGetFontName ");
1182
1183   TestApplication application;
1184
1185   TextStyle style;
1186
1187   style.SetFontName( FONT_FAMILY );
1188
1189   DALI_TEST_EQUALS( style.GetFontName(), FONT_FAMILY, TEST_LOCATION );
1190
1191   // Added to increase coverage
1192   style.SetFontStyle( FONT_STYLE );
1193   DALI_TEST_EQUALS( style.GetFontStyle(), FONT_STYLE, TEST_LOCATION );
1194
1195   END_TEST;
1196 }
1197
1198 int UtcDaliTextStyleSetGetFontStyle(void)
1199 {
1200   tet_infoline(" UtcDaliTextStyleSetGetFontStyle ");
1201
1202   TestApplication application;
1203
1204   TextStyle style;
1205
1206   style.SetFontStyle( FONT_STYLE );
1207
1208   DALI_TEST_EQUALS( style.GetFontStyle(), FONT_STYLE, TEST_LOCATION );
1209
1210   // Added to increase coverage
1211   style.SetFontName( FONT_FAMILY );
1212   DALI_TEST_EQUALS( style.GetFontName(), FONT_FAMILY, TEST_LOCATION );
1213
1214   END_TEST;
1215 }
1216
1217 int UtcDaliTextStyleSetGetFontPointSize(void)
1218 {
1219   tet_infoline(" UtcDaliTextStyleSetGetFontPointSize ");
1220
1221   TestApplication application;
1222
1223   TextStyle style;
1224
1225   style.SetFontPointSize( FONT_POINT_SIZE );
1226
1227   DALI_TEST_EQUALS( style.GetFontPointSize(), FONT_POINT_SIZE, TEST_LOCATION );
1228
1229   // Added to increase coverage
1230   style.SetTextColor( TEXT_COLOR );
1231   DALI_TEST_EQUALS( style.GetTextColor(), TEXT_COLOR, TEST_LOCATION );
1232
1233   END_TEST;
1234 }
1235
1236 int UtcDaliTextStyleSetGetTextColor(void)
1237 {
1238   tet_infoline(" UtcDaliTextStyleSetGetTextColor ");
1239
1240   TestApplication application;
1241
1242   TextStyle style;
1243
1244   style.SetTextColor( TEXT_COLOR );
1245
1246   DALI_TEST_EQUALS( style.GetTextColor(), TEXT_COLOR, TEST_LOCATION );
1247
1248   // Added to increase coverage
1249   style.SetFontPointSize( FONT_POINT_SIZE );
1250   DALI_TEST_EQUALS( style.GetFontPointSize(), FONT_POINT_SIZE, TEST_LOCATION );
1251
1252   END_TEST;
1253 }
1254
1255 int UtcDaliTextStyleSetGetWeight(void)
1256 {
1257   tet_infoline(" UtcDaliTextStyleSetGetWeight ");
1258
1259   TestApplication application;
1260
1261   TextStyle style;
1262
1263   style.SetWeight( TEXT_WEIGHT );
1264
1265   DALI_TEST_EQUALS( style.GetWeight(), TEXT_WEIGHT, TEST_LOCATION );
1266
1267   // Added to increase coverage
1268   style.SetSmoothEdge( SMOOTH_EDGE );
1269   DALI_TEST_EQUALS( style.GetSmoothEdge(), SMOOTH_EDGE, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
1270
1271   END_TEST;
1272 }
1273
1274 int UtcDaliTextStyleSetGetSmoothEdge(void)
1275 {
1276   tet_infoline(" UtcDaliTextStyleSetGetGlow ");
1277
1278   TestApplication application;
1279
1280   TextStyle style;
1281
1282   style.SetSmoothEdge( SMOOTH_EDGE );
1283
1284   DALI_TEST_EQUALS( style.GetSmoothEdge(), SMOOTH_EDGE, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
1285
1286   // Added to increase coverage
1287   style.SetWeight( TEXT_WEIGHT );
1288   DALI_TEST_EQUALS( style.GetWeight(), TEXT_WEIGHT, TEST_LOCATION );
1289
1290   END_TEST;
1291 }
1292
1293 int UtcDaliTextStyleSetGetItalics(void)
1294 {
1295   tet_infoline(" UtcDaliTextStyleSetGetItalics ");
1296
1297   TestApplication application;
1298
1299   TextStyle style;
1300
1301   DALI_TEST_EQUALS( style.GetItalicsAngle(), TextStyle::DEFAULT_ITALICS_ANGLE, TEST_LOCATION );
1302
1303   style.SetItalics( ITALICS, ITALICS_ANGLE );
1304
1305   DALI_TEST_CHECK( style.IsItalicsEnabled() );
1306   DALI_TEST_EQUALS( style.GetItalicsAngle(), ITALICS_ANGLE, TEST_LOCATION );
1307
1308   style.SetItalics( !ITALICS, TextStyle::DEFAULT_ITALICS_ANGLE  );
1309
1310   DALI_TEST_CHECK( !style.IsItalicsEnabled() );
1311
1312   END_TEST;
1313 }
1314
1315 int UtcDaliTextStyleSetGetUnderline(void)
1316 {
1317   tet_infoline(" UtcDaliTextStyleSetGetUnderline ");
1318
1319   TestApplication application;
1320
1321   TextStyle style;
1322
1323   style.SetUnderline( UNDERLINE, UNDERLINE_THICKNESS, UNDERLINE_POSITION );
1324
1325   DALI_TEST_CHECK( style.IsUnderlineEnabled() );
1326   DALI_TEST_EQUALS( style.GetUnderlineThickness(), UNDERLINE_THICKNESS, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
1327   DALI_TEST_EQUALS( style.GetUnderlinePosition(), UNDERLINE_POSITION, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
1328
1329   style.SetUnderline( !UNDERLINE, TextStyle::DEFAULT_UNDERLINE_THICKNESS, TextStyle::DEFAULT_UNDERLINE_POSITION );
1330
1331   DALI_TEST_CHECK( !style.IsUnderlineEnabled() );
1332   DALI_TEST_EQUALS( style.GetUnderlineThickness(), TextStyle::DEFAULT_UNDERLINE_THICKNESS, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
1333   DALI_TEST_EQUALS( style.GetUnderlinePosition(), TextStyle::DEFAULT_UNDERLINE_POSITION, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
1334
1335   END_TEST;
1336 }
1337
1338 int UtcDaliTextStyleSetGetShadow(void)
1339 {
1340   tet_infoline(" UtcDaliTextStyleSetGetShadow ");
1341
1342   TestApplication application;
1343
1344   TextStyle style;
1345
1346   DALI_TEST_CHECK( !style.IsShadowEnabled() );
1347
1348   style.SetShadow( SHADOW, SHADOW_COLOR, SHADOW_OFFSET, SHADOW_SIZE );
1349
1350   DALI_TEST_CHECK( style.IsShadowEnabled() );
1351   DALI_TEST_EQUALS( style.GetShadowColor(), SHADOW_COLOR, TEST_LOCATION );
1352   DALI_TEST_EQUALS( style.GetShadowOffset(), SHADOW_OFFSET, TEST_LOCATION );
1353   DALI_TEST_EQUALS( style.GetShadowSize(), SHADOW_SIZE, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
1354
1355   style.SetShadow( !SHADOW, TextStyle::DEFAULT_SHADOW_COLOR, TextStyle::DEFAULT_SHADOW_OFFSET, TextStyle::DEFAULT_SHADOW_SIZE );
1356   DALI_TEST_CHECK( !style.IsShadowEnabled() );
1357   DALI_TEST_EQUALS( style.GetShadowColor(), TextStyle::DEFAULT_SHADOW_COLOR, TEST_LOCATION );
1358   DALI_TEST_EQUALS( style.GetShadowOffset(), TextStyle::DEFAULT_SHADOW_OFFSET, TEST_LOCATION );
1359   DALI_TEST_EQUALS( style.GetShadowSize(), TextStyle::DEFAULT_SHADOW_SIZE, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
1360
1361   END_TEST;
1362 }
1363
1364 int UtcDaliTextStyleSetGetGlow(void)
1365 {
1366   tet_infoline(" UtcDaliTextStyleSetGetGlow ");
1367
1368   TestApplication application;
1369
1370   TextStyle style;
1371
1372   DALI_TEST_CHECK( !style.IsGlowEnabled() );
1373
1374   style.SetGlow( GLOW, GLOW_COLOR, GLOW_INTENSITY );
1375
1376   DALI_TEST_CHECK( style.IsGlowEnabled() );
1377   DALI_TEST_EQUALS( style.GetGlowColor(), GLOW_COLOR, TEST_LOCATION );
1378   DALI_TEST_EQUALS( style.GetGlowIntensity(), GLOW_INTENSITY, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
1379
1380   style.SetGlow( !GLOW, TextStyle::DEFAULT_GLOW_COLOR, TextStyle::DEFAULT_GLOW_INTENSITY );
1381
1382   DALI_TEST_CHECK( !style.IsGlowEnabled() );
1383   DALI_TEST_EQUALS( style.GetGlowColor(), TextStyle::DEFAULT_GLOW_COLOR, TEST_LOCATION );
1384   DALI_TEST_EQUALS( style.GetGlowIntensity(), TextStyle::DEFAULT_GLOW_INTENSITY, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
1385
1386   END_TEST;
1387 }
1388
1389 int UtcDaliTextStyleSetGetOutline(void)
1390 {
1391   tet_infoline(" UtcDaliTextStyleSetGetOutline ");
1392
1393   TestApplication application;
1394
1395   TextStyle style;
1396
1397   DALI_TEST_CHECK( !style.IsOutlineEnabled() );
1398
1399   style.SetOutline( OUTLINE, OUTLINE_COLOR, OUTLINE_THICKNESS );
1400
1401   DALI_TEST_CHECK( style.IsOutlineEnabled() );
1402   DALI_TEST_EQUALS( style.GetOutlineColor(), OUTLINE_COLOR, TEST_LOCATION );
1403   DALI_TEST_EQUALS( style.GetOutlineThickness(), OUTLINE_THICKNESS, TEST_LOCATION );
1404
1405   style.SetOutline( !OUTLINE, TextStyle::DEFAULT_OUTLINE_COLOR, TextStyle::DEFAULT_OUTLINE_THICKNESS );
1406
1407   DALI_TEST_CHECK( !style.IsOutlineEnabled() );
1408   DALI_TEST_EQUALS( style.GetOutlineColor(), TextStyle::DEFAULT_OUTLINE_COLOR, TEST_LOCATION );
1409   DALI_TEST_EQUALS( style.GetOutlineThickness(), TextStyle::DEFAULT_OUTLINE_THICKNESS, TEST_LOCATION );
1410
1411   END_TEST;
1412 }
1413
1414 int UtcDaliTextStyleSetGetGradient(void)
1415 {
1416   tet_infoline(" UtcDaliTextStyleSetGetGradient ");
1417
1418   TestApplication application;
1419
1420   TextStyle style;
1421
1422   DALI_TEST_CHECK( !style.IsGradientEnabled() );
1423
1424   style.SetGradient( GRADIENT, GRADIENT_COLOR, GRADIENT_START_POINT, GRADIENT_END_POINT );
1425
1426   DALI_TEST_CHECK( style.IsGradientEnabled() );
1427   DALI_TEST_EQUALS( style.GetGradientColor(), GRADIENT_COLOR, TEST_LOCATION );
1428   DALI_TEST_EQUALS( style.GetGradientStartPoint(), GRADIENT_START_POINT, TEST_LOCATION );
1429   DALI_TEST_EQUALS( style.GetGradientEndPoint(), GRADIENT_END_POINT, TEST_LOCATION );
1430
1431   style.SetGradient( !GRADIENT, TextStyle::DEFAULT_GRADIENT_COLOR, TextStyle::DEFAULT_GRADIENT_START_POINT, TextStyle::DEFAULT_GRADIENT_END_POINT );
1432
1433   DALI_TEST_CHECK( !style.IsGradientEnabled() );
1434   DALI_TEST_EQUALS( style.GetGradientColor(), TextStyle::DEFAULT_GRADIENT_COLOR, TEST_LOCATION );
1435   DALI_TEST_EQUALS( style.GetGradientStartPoint(), TextStyle::DEFAULT_GRADIENT_START_POINT, TEST_LOCATION );
1436   DALI_TEST_EQUALS( style.GetGradientEndPoint(), TextStyle::DEFAULT_GRADIENT_END_POINT, TEST_LOCATION );
1437
1438   END_TEST;
1439 }