04a518a1c1f2ae73f0f7de35545b785e48091b0b
[platform/core/csapi/tizenfx.git] / test / Tizen.NUI.Tests / Tizen.NUI.Devel.Tests / testcase / public / Utility / TSScrollViewPagePathEffect.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 using System.Collections.Generic;
7
8 namespace Tizen.NUI.Devel.Tests
9 {
10     using tlog = Tizen.Log;
11
12     [TestFixture]
13     [Description("public/Utility/ScrollViewPagePathEffect")]
14     public class PublicScrollViewPagePathEffectTest
15     {
16         private const string tag = "NUITEST";
17
18         internal class MyScrollViewPagePathEffect : ScrollViewPagePathEffect
19         {
20             private static Path path = new Path();
21             private static Vector3 forward = new Vector3(2, 4, 6);
22             private static int inputPropertyIndex = 1;
23             private static Vector3 pageSize = new Vector3(6, 8, 10);
24             private static uint pageCount = 5;
25
26             public MyScrollViewPagePathEffect() : base(path, forward, inputPropertyIndex, pageSize, pageCount)
27             { }
28
29             public void OnReleaseSwigCPtr(global::System.Runtime.InteropServices.HandleRef swigCPtr)
30             {
31                 base.ReleaseSwigCPtr(swigCPtr);
32             }
33         }
34
35         [SetUp]
36         public void Init()
37         {
38             tlog.Info(tag, "Init() is called!");
39         }
40
41         [TearDown]
42         public void Destroy()
43         {
44             tlog.Info(tag, "Destroy() is called!");
45         }
46
47         [Test]
48         [Category("P1")]
49         [Description("ScrollViewPagePathEffect constructor.")]
50         [Property("SPEC", "Tizen.NUI.ScrollViewPagePathEffect.ScrollViewPagePathEffect C")]
51         [Property("SPEC_URL", "-")]
52         [Property("CRITERIA", "CONSTR")]
53         [Property("AUTHOR", "guowei.wang@samsung.com")]
54         public void ScrollViewPagePathEffectConstructor()
55         {
56             tlog.Debug(tag, $"ScrollViewPagePathEffectConstructor START");
57
58             using (Path path = new Path())
59             {
60                 using (Vector3 forword = new Vector3(2, 4, 6))
61                 {
62                     using (Vector3 pageSize = new Vector3(6, 8, 10))
63                     {
64                         var testingTarget = new ScrollViewPagePathEffect(path, forword, 1, pageSize, 5);
65                         Assert.IsNotNull(testingTarget, "Can't create success object ScrollViewPagePathEffect");
66                         Assert.IsInstanceOf<ScrollViewPagePathEffect>(testingTarget, "Should be an instance of ScrollViewPagePathEffect type.");
67
68                         testingTarget.Dispose();
69                     }
70                 }
71             }
72
73             tlog.Debug(tag, $"ScrollViewPagePathEffectConstructor END (OK)");
74         }
75
76         [Test]
77         [Category("P1")]
78         [Description("ScrollViewPagePathEffect DownCast.")]
79         [Property("SPEC", "Tizen.NUI.ScrollViewPagePathEffect.DownCast M")]
80         [Property("SPEC_URL", "-")]
81         [Property("CRITERIA", "MR")]
82         [Property("AUTHOR", "guowei.wang@samsung.com")]
83         public void ScrollViewPagePathEffectDownCast()
84         {
85             tlog.Debug(tag, $"ScrollViewPagePathEffectDownCast START");
86
87             using (Path path = new Path())
88             {
89                 using (Vector3 forword = new Vector3(2, 4, 6))
90                 {
91                     using (Vector3 pageSize = new Vector3(6, 8, 10))
92                     {
93                         var testingTarget = new ScrollViewPagePathEffect(path, forword, 1, pageSize, 5);
94                         Assert.IsNotNull(testingTarget, "Can't create success object ScrollViewPagePathEffect");
95                         Assert.IsInstanceOf<ScrollViewPagePathEffect>(testingTarget, "Should be an instance of ScrollViewPagePathEffect type.");
96
97                         var result = ScrollViewPagePathEffect.DownCast(testingTarget);
98                         Assert.IsNotNull(result, "Can't create success object ScrollViewPagePathEffect");
99                         Assert.IsInstanceOf<ScrollViewPagePathEffect>(result, "Should be an instance of ScrollViewPagePathEffect type.");
100
101                         testingTarget.Dispose();
102                     }
103                 }
104             }
105
106             tlog.Debug(tag, $"ScrollViewPagePathEffectDownCast END (OK)");
107         }
108
109         [Test]
110         [Category("P1")]
111         [Description("ScrollViewPagePathEffect ApplyToPage.")]
112         [Property("SPEC", "Tizen.NUI.ScrollViewPagePathEffect.ApplyToPage M")]
113         [Property("SPEC_URL", "-")]
114         [Property("CRITERIA", "MR")]
115         [Property("AUTHOR", "guowei.wang@samsung.com")]
116         public void ScrollViewPagePathEffectApplyToPage()
117         {
118             tlog.Debug(tag, $"ScrollViewPagePathEffectApplyToPage START");
119
120             using (Path path = new Path())
121             {
122                 using (Vector3 forword = new Vector3(2, 4, 6))
123                 {
124                     using (Vector3 pageSize = new Vector3(6, 8, 10))
125                     {
126                         var testingTarget = new ScrollViewPagePathEffect(path, forword, 1, pageSize, 5);
127                         Assert.IsNotNull(testingTarget, "Can't create success object ScrollViewPagePathEffect");
128                         Assert.IsInstanceOf<ScrollViewPagePathEffect>(testingTarget, "Should be an instance of ScrollViewPagePathEffect type.");
129
130                         try
131                         {
132                             using (View view = new View())
133                             {
134                                 testingTarget.ApplyToPage(view, 2);
135                             }
136                         }
137                         catch (Exception e)
138                         {
139                             tlog.Debug(tag, e.Message.ToString());
140                             Assert.Fail("Caught Exception: Failed!");
141                         }
142
143                         testingTarget.Dispose();
144                     }
145                 }
146             }
147
148             tlog.Debug(tag, $"ScrollViewPagePathEffectApplyToPage END (OK)");
149         }
150
151         [Test]
152         [Category("P1")]
153         [Description("ScrollViewPagePathEffect ReleaseSwigCPtr.")]
154         [Property("SPEC", "Tizen.NUI.ScrollViewPagePathEffect.ReleaseSwigCPtr M")]
155         [Property("SPEC_URL", "-")]
156         [Property("CRITERIA", "MR")]
157         [Property("AUTHOR", "guowei.wang@samsung.com")]
158         public void ScrollViewPagePathEffectReleaseSwigCPtr()
159         {
160             tlog.Debug(tag, $"ScrollViewPagePathEffectReleaseSwigCPtr START");
161
162             var testingTarget = new MyScrollViewPagePathEffect();
163             Assert.IsNotNull(testingTarget, "Can't create success object ScrollViewPagePathEffect");
164             Assert.IsInstanceOf<ScrollViewPagePathEffect>(testingTarget, "Should be an instance of ScrollViewPagePathEffect type.");
165
166             try
167             {
168                 testingTarget.OnReleaseSwigCPtr(testingTarget.SwigCPtr);
169             }
170             catch (Exception e)
171             {
172                 tlog.Debug(tag, e.Message.ToString());
173                 Assert.Fail("Caught Exception: Failed!");
174             }
175
176             tlog.Debug(tag, $"ScrollViewPagePathEffectReleaseSwigCPtr END (OK)");
177         }
178     }
179 }