[NUI] make Tizen.NUI.Devel.Tests be built in csharp-tct by copying the folder itself
[platform/core/csapi/tizenfx.git] / test / Tizen.NUI.Tests / Tizen.NUI.Devel.Tests / testcase / internal / Transition / TSTransitionItemBase.cs
1 using global::System;
2 using NUnit.Framework;
3 using NUnit.Framework.TUnit;
4 using Tizen.NUI.Components;
5 using Tizen.NUI.BaseComponents;
6
7 namespace Tizen.NUI.Devel.Tests
8 {
9     using tlog = Tizen.Log;
10
11     [TestFixture]
12     [Description("Internal/Transition/TransitionItemBase")]
13     class TSTransitionItemBase
14     {
15         private const string tag = "NUITEST";
16
17         [SetUp]
18         public void Init()
19         {
20             tlog.Info(tag, "Init() is called!");
21         }
22
23         [TearDown]
24         public void Destroy()
25         {
26             tlog.Info(tag, "Destroy() is called!");
27         }
28
29         [Test]
30         [Category("P1")]
31         [Description("TransitionItemBase constructor.")]
32         [Property("SPEC", "Tizen.NUI.TransitionItemBase.TransitionItemBase C")]
33         [Property("SPEC_URL", "-")]
34         [Property("CRITERIA", "CONSTR")]
35         [Property("AUTHOR", "guowei.wang@samsung.com")]
36         public void TransitionItemBaseConstructor()
37         {
38             tlog.Debug(tag, $"TransitionItemBaseConstructor START");
39
40             View view = new View()
41             {
42                 Name = "view",
43                 TransitionOptions = new TransitionOptions(Window.Instance)
44             };
45             view.TransitionOptions.TransitionTag = "Transition";
46             view.TransitionOptions.EnableTransition = true;
47
48             TransitionItemBase testingTarget = null;
49             using (TimePeriod timePeriod = new TimePeriod(500))
50             {
51                 using (AlphaFunction alphaFunction = new AlphaFunction(AlphaFunction.BuiltinFunctions.Default))
52                 {
53                     testingTarget = new TransitionItemBase(view, true, timePeriod, alphaFunction);
54                 }
55             }
56
57             view.Dispose();
58             testingTarget.Dispose();
59             tlog.Debug(tag, $"TransitionItemBaseConstructor END (OK)");
60         }
61
62         [Test]
63         [Category("P1")]
64         [Description("TransitionItemBase Duration.")]
65         [Property("SPEC", "Tizen.NUI.TransitionItemBase.Duration A")]
66         [Property("SPEC_URL", "-")]
67         [Property("CRITERIA", "PRW")]
68         [Property("AUTHOR", "guowei.wang@samsung.com")]
69         public void TransitionItemBaseDuration()
70         {
71             tlog.Debug(tag, $"TransitionItemBaseDuration START");
72
73             View view = new View()
74             {
75                 Name = "view",
76                 TransitionOptions = new TransitionOptions(Window.Instance)
77             };
78             view.TransitionOptions.TransitionTag = "Transition";
79             view.TransitionOptions.EnableTransition = true;
80
81             TransitionItemBase testingTarget = null;
82             using (TimePeriod timePeriod = new TimePeriod(500))
83             {
84                 using (AlphaFunction alphaFunction = new AlphaFunction(AlphaFunction.BuiltinFunctions.Default))
85                 {
86                     testingTarget = new TransitionItemBase(view, true, timePeriod, alphaFunction);
87                 }
88             }
89
90             testingTarget.Duration = 300;
91             Assert.IsTrue(300 == testingTarget.Duration);
92
93             view.Dispose();
94             testingTarget.Dispose();
95             tlog.Debug(tag, $"TransitionItemBaseDuration END (OK)");
96         }
97
98         [Test]
99         [Category("P1")]
100         [Description("TransitionItemBase Delay.")]
101         [Property("SPEC", "Tizen.NUI.TransitionItemBase.Delay A")]
102         [Property("SPEC_URL", "-")]
103         [Property("CRITERIA", "PRW")]
104         [Property("AUTHOR", "guowei.wang@samsung.com")]
105         public void TransitionItemBaseDelay()
106         {
107             tlog.Debug(tag, $"TransitionItemBaseDelay START");
108
109             View view = new View()
110             {
111                 Name = "view",
112                 TransitionOptions = new TransitionOptions(Window.Instance)
113             };
114             view.TransitionOptions.TransitionTag = "Transition";
115             view.TransitionOptions.EnableTransition = true;
116
117             TransitionItemBase testingTarget = null;
118             using (TimePeriod timePeriod = new TimePeriod(500))
119             {
120                 using (AlphaFunction alphaFunction = new AlphaFunction(AlphaFunction.BuiltinFunctions.Default))
121                 {
122                     testingTarget = new TransitionItemBase(view, true, timePeriod, alphaFunction);
123                 }
124             }
125
126             testingTarget.Delay = 300;
127             Assert.IsTrue(300 == testingTarget.Delay);
128
129             view.Dispose();
130             testingTarget.Dispose();
131             tlog.Debug(tag, $"TransitionItemBaseDelay END (OK)");
132         }
133
134         [Test]
135         [Category("P1")]
136         [Description("TransitionItemBase TimePeriod.")]
137         [Property("SPEC", "Tizen.NUI.TransitionItemBase.TimePeriod A")]
138         [Property("SPEC_URL", "-")]
139         [Property("CRITERIA", "PW")]
140         [Property("AUTHOR", "guowei.wang@samsung.com")]
141         public void TransitionItemBaseTimePeriod()
142         {
143             tlog.Debug(tag, $"TransitionItemBaseTimePeriod START");
144
145             View view = new View()
146             {
147                 Name = "view",
148                 TransitionOptions = new TransitionOptions(Window.Instance)
149             };
150             view.TransitionOptions.TransitionTag = "Transition";
151             view.TransitionOptions.EnableTransition = true;
152
153             TransitionItemBase testingTarget = null;
154             using (TimePeriod timePeriod = new TimePeriod(500))
155             {
156                 using (AlphaFunction alphaFunction = new AlphaFunction(AlphaFunction.BuiltinFunctions.Default))
157                 {
158                     testingTarget = new TransitionItemBase(view, true, timePeriod, alphaFunction);
159                 }
160             }
161
162             try
163             {
164                 using (TimePeriod setValue = new TimePeriod(300))
165                 {
166                     testingTarget.TimePeriod = setValue;
167                 }
168             }
169             catch (Exception e)
170             {
171                 tlog.Error(tag, "Caught Exception" + e.ToString());
172                 LogUtils.Write(LogUtils.DEBUG, LogUtils.TAG, "Caught Exception" + e.ToString());
173                 Assert.Fail("Caught Exception" + e.ToString());
174             }
175
176             view.Dispose();
177             testingTarget.Dispose();
178             tlog.Debug(tag, $"TransitionItemBaseTimePeriod END (OK)");
179         }
180
181         [Test]
182         [Category("P1")]
183         [Description("TransitionItemBase AlphaFunction.")]
184         [Property("SPEC", "Tizen.NUI.TransitionItemBase.AlphaFunction A")]
185         [Property("SPEC_URL", "-")]
186         [Property("CRITERIA", "PRW")]
187         [Property("AUTHOR", "guowei.wang@samsung.com")]
188         public void TransitionItemBaseAlphaFunction()
189         {
190             tlog.Debug(tag, $"TransitionItemBaseAlphaFunction START");
191
192             View view = new View()
193             {
194                 Name = "view",
195                 TransitionOptions = new TransitionOptions(Window.Instance)
196             };
197             view.TransitionOptions.TransitionTag = "Transition";
198             view.TransitionOptions.EnableTransition = true;
199
200             TransitionItemBase testingTarget = null;
201             using (TimePeriod timePeriod = new TimePeriod(500))
202             {
203                 using (AlphaFunction alphaFunction = new AlphaFunction(AlphaFunction.BuiltinFunctions.Default))
204                 {
205                     testingTarget = new TransitionItemBase(view, true, timePeriod, alphaFunction);
206                 }
207             }
208
209             using (AlphaFunction setValue = new AlphaFunction(AlphaFunction.BuiltinFunctions.EaseOut)) 
210             {
211                 testingTarget.AlphaFunction = setValue;
212                 var result = testingTarget.AlphaFunction;
213                 Assert.IsTrue(result.GetBuiltinFunction() == AlphaFunction.BuiltinFunctions.EaseOut);
214             }
215
216             view.Dispose();
217             testingTarget.Dispose();
218             tlog.Debug(tag, $"TransitionItemBaseAlphaFunction END (OK)");
219         }
220
221         [Test]
222         [Category("P1")]
223         [Description("TransitionItemBase TransitionWithChild.")]
224         [Property("SPEC", "Tizen.NUI.TransitionItemBase.TransitionWithChild A")]
225         [Property("SPEC_URL", "-")]
226         [Property("CRITERIA", "PW")]
227         [Property("AUTHOR", "guowei.wang@samsung.com")]
228         public void TransitionItemBaseTransitionWithChild()
229         {
230             tlog.Debug(tag, $"TransitionItemBaseTransitionWithChild START");
231
232             View view = new View()
233             {
234                 Name = "view",
235                 TransitionOptions = new TransitionOptions(Window.Instance)
236             };
237             view.TransitionOptions.TransitionTag = "Transition";
238             view.TransitionOptions.EnableTransition = true;
239
240             TransitionItemBase testingTarget = null;
241             using (TimePeriod timePeriod = new TimePeriod(500))
242             {
243                 using (AlphaFunction alphaFunction = new AlphaFunction(AlphaFunction.BuiltinFunctions.Default))
244                 {
245                     testingTarget = new TransitionItemBase(view, true, timePeriod, alphaFunction);
246                 }
247             }
248
249             try
250             {
251                 testingTarget.TransitionWithChild = true;
252             }
253             catch (Exception e)
254             {
255                 tlog.Error(tag, "Caught Exception" + e.ToString());
256                 LogUtils.Write(LogUtils.DEBUG, LogUtils.TAG, "Caught Exception" + e.ToString());
257                 Assert.Fail("Caught Exception" + e.ToString());
258             }
259
260             view.Dispose();
261             testingTarget.Dispose();
262             tlog.Debug(tag, $"TransitionItemBaseTransitionWithChild END (OK)");
263         }
264
265         [Test]
266         [Category("P1")]
267         [Description("TransitionItemBase DownCast.")]
268         [Property("SPEC", "Tizen.NUI.TransitionItemBase.DownCast M")]
269         [Property("SPEC_URL", "-")]
270         [Property("CRITERIA", "MR")]
271         [Property("AUTHOR", "guowei.wang@samsung.com")]
272         public void TransitionItemBaseDownCast()
273         {
274             tlog.Debug(tag, $"TransitionItemBaseDownCast START");
275
276             View view = new View()
277             {
278                 Name = "view",
279                 TransitionOptions = new TransitionOptions(Window.Instance)
280             };
281             view.TransitionOptions.TransitionTag = "Transition";
282             view.TransitionOptions.EnableTransition = true;
283
284             TransitionItemBase testingTarget = null;
285             using (TimePeriod timePeriod = new TimePeriod(500))
286             {
287                 using (AlphaFunction alphaFunction = new AlphaFunction(AlphaFunction.BuiltinFunctions.Default))
288                 {
289                     testingTarget = new TransitionItemBase(view, true, timePeriod, alphaFunction);
290                 }
291             }
292
293             var result = TransitionItemBase.DownCast(testingTarget);
294             Assert.IsNotNull(result, "Should be not null!");
295             Assert.IsInstanceOf<TransitionItemBase>(result, "Should be an Instance of TransitionItemBase!");
296
297             view.Dispose();
298             testingTarget.Dispose();
299             tlog.Debug(tag, $"TransitionItemBaseDownCast END (OK)");
300         }
301
302         [Test]
303         [Category("P1")]
304         [Description("TransitionItemBase Assign.")]
305         [Property("SPEC", "Tizen.NUI.TransitionItemBase.Assign M")]
306         [Property("SPEC_URL", "-")]
307         [Property("CRITERIA", "MR")]
308         [Property("AUTHOR", "guowei.wang@samsung.com")]
309         public void TransitionItemBaseAssign()
310         {
311             tlog.Debug(tag, $"TransitionItemBaseAssign START");
312
313             View view = new View()
314             {
315                 Name = "view",
316                 TransitionOptions = new TransitionOptions(Window.Instance)
317             };
318             view.TransitionOptions.TransitionTag = "Transition";
319             view.TransitionOptions.EnableTransition = true;
320
321             TransitionItemBase testingTarget = null;
322             using (TimePeriod timePeriod = new TimePeriod(500))
323             {
324                 using (AlphaFunction alphaFunction = new AlphaFunction(AlphaFunction.BuiltinFunctions.Default))
325                 {
326                     testingTarget = new TransitionItemBase(view, true, timePeriod, alphaFunction);
327                 }
328             }
329
330             using (TransitionItemBase rhs = new TransitionItemBase(testingTarget))
331             {
332                 var result = testingTarget.Assign(rhs);
333                 Assert.IsNotNull(result, "Should be not null!");
334                 Assert.IsInstanceOf<TransitionItemBase>(result, "Should be an Instance of TransitionItemBase!");
335             }
336
337             view.Dispose();
338             testingTarget.Dispose();
339             tlog.Debug(tag, $"TransitionItemBaseAssign END (OK)");
340         }
341
342         [Test]
343         [Category("P1")]
344         [Description("TransitionItemBase Dispose.")]
345         [Property("SPEC", "Tizen.NUI.TransitionItemBase.Dispose M")]
346         [Property("SPEC_URL", "-")]
347         [Property("CRITERIA", "MR")]
348         [Property("AUTHOR", "guowei.wang@samsung.com")]
349         public void TransitionItemBaseDispose()
350         {
351             tlog.Debug(tag, $"TransitionItemBaseDispose START");
352
353             View view = new View()
354             {
355                 Name = "view",
356                 TransitionOptions = new TransitionOptions(Window.Instance)
357             };
358             view.TransitionOptions.TransitionTag = "Transition";
359             view.TransitionOptions.EnableTransition = true;
360
361             TransitionItemBase testingTarget = null;
362             using (TimePeriod timePeriod = new TimePeriod(500))
363             {
364                 using (AlphaFunction alphaFunction = new AlphaFunction(AlphaFunction.BuiltinFunctions.Default))
365                 {
366                     testingTarget = new TransitionItemBase(view, true, timePeriod, alphaFunction);
367                 }
368             }
369
370             try
371             {
372                 testingTarget.Dispose();
373             }
374             catch (Exception e)
375             {
376                 tlog.Error(tag, "Caught Exception" + e.ToString());
377                 LogUtils.Write(LogUtils.DEBUG, LogUtils.TAG, "Caught Exception" + e.ToString());
378                 Assert.Fail("Caught Exception" + e.ToString());
379             }
380
381             view?.Dispose();
382             tlog.Debug(tag, $"TransitionItemBaseDispose END (OK)");
383         }
384     }
385 }