1d1e6225bd6e0b9ed274ee68016c2a9ac7955afc
[platform/core/csapi/tizenfx.git] / test / Tizen.NUI.Tests / Tizen.NUI.Devel.Tests / testcase / internal / Utility / TSBuilder.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/Utility/Builder")]
13     public class InternalBuilderTest
14     {
15         private const string tag = "NUITEST";
16         private string path = Tizen.Applications.Application.Current.DirectoryInfo.Resource + "lottie.json";
17
18         [SetUp]
19         public void Init()
20         {
21             tlog.Info(tag, "Init() is called!");
22         }
23
24         [TearDown]
25         public void Destroy()
26         {
27             tlog.Info(tag, "Destroy() is called!");
28         }
29
30         [Test]
31         [Category("P1")]
32         [Description("Builder constructor.")]
33         [Property("SPEC", "Tizen.NUI.Builder.Builder C")]
34         [Property("SPEC_URL", "-")]
35         [Property("CRITERIA", "CONSTR")]
36         [Property("AUTHOR", "guowei.wang@samsung.com")]
37         public void BuilderConstructor()
38         {
39             tlog.Debug(tag, $"BuilderConstructor START");
40
41             var testingTarget = new Builder();
42             Assert.IsNotNull(testingTarget, "Should be not null!");
43             Assert.IsInstanceOf<Builder>(testingTarget, "Should be an Instance of Builder!");
44
45             testingTarget.Dispose();
46             testingTarget = null;
47             tlog.Debug(tag, $"BuilderConstructor END (OK)");
48         }
49
50         [Test]
51         [Category("P1")]
52         [Description("Builder Quit.")]
53         [Property("SPEC", "Tizen.NUI.Builder.Quit A")]
54         [Property("SPEC_URL", "-")]
55         [Property("CRITERIA", "PRW")]
56         [Property("AUTHOR", "guowei.wang@samsung.com")]
57         public void BuilderQuit()
58         {
59             tlog.Debug(tag, $"BuilderQuit START");
60
61             var testingTarget = new Builder();
62             Assert.IsNotNull(testingTarget, "Should be not null!");
63             Assert.IsInstanceOf<Builder>(testingTarget, "Should be an Instance of Builder!");
64
65             testingTarget.Quit += MyOnQuit;
66             testingTarget.Quit -= MyOnQuit;
67
68             testingTarget.Dispose();
69             testingTarget = null;
70             tlog.Debug(tag, $"BuilderQuit END (OK)");
71         }
72
73         [Test]
74         [Category("P1")]
75         [Description("Builder AddConstants.")]
76         [Property("SPEC", "Tizen.NUI.Builder.AddConstants M")]
77         [Property("SPEC_URL", "-")]
78         [Property("CRITERIA", "MR")]
79         [Property("AUTHOR", "guowei.wang@samsung.com")]
80         public void BuilderAddConstants()
81         {
82             tlog.Debug(tag, $"BuilderAddConstants START");
83
84             var testingTarget = new Builder();
85             Assert.IsNotNull(testingTarget, "Should be not null!");
86             Assert.IsInstanceOf<Builder>(testingTarget, "Should be an Instance of Builder!");
87
88             using (PropertyMap map = new PropertyMap())
89             {
90                 map.Add("Size", new PropertyValue(new Size(20, 30)));
91                 map.Add("Posision", new PropertyValue(new Position(100, 200)));
92
93                 try
94                 {
95                     testingTarget.AddConstants(map);
96                 }
97                 catch (Exception e)
98                 {
99                     tlog.Debug(tag, e.Message.ToString());
100                     Assert.Fail("Caught Exception: Failed!");
101                 }
102             }
103
104             testingTarget.Dispose();
105             testingTarget = null;
106             tlog.Debug(tag, $"BuilderAddConstants END (OK)");
107         }
108
109         [Test]
110         [Category("P1")]
111         [Description("Builder AddConstant.")]
112         [Property("SPEC", "Tizen.NUI.Builder.AddConstant M")]
113         [Property("SPEC_URL", "-")]
114         [Property("CRITERIA", "MR")]
115         [Property("AUTHOR", "guowei.wang@samsung.com")]
116         public void BuilderAddConstant()
117         {
118             tlog.Debug(tag, $"BuilderAddConstant START");
119
120             var testingTarget = new Builder();
121             Assert.IsNotNull(testingTarget, "Should be not null!");
122             Assert.IsInstanceOf<Builder>(testingTarget, "Should be an Instance of Builder!");
123
124             try
125             {
126                 testingTarget.AddConstant("Size", new PropertyValue(new Size(20, 30)));
127             }
128             catch (Exception e)
129             {
130                 tlog.Debug(tag, e.Message.ToString());
131                 Assert.Fail("Caught Exception: Failed!");
132             }
133
134             testingTarget.Dispose();
135             testingTarget = null;
136             tlog.Debug(tag, $"BuilderAddConstant END (OK)");
137         }
138
139         [Test]
140         [Category("P1")]
141         [Description("Builder GetConstants.")]
142         [Property("SPEC", "Tizen.NUI.Builder.GetConstants M")]
143         [Property("SPEC_URL", "-")]
144         [Property("CRITERIA", "MR")]
145         [Property("AUTHOR", "guowei.wang@samsung.com")]
146         public void BuilderGetConstants()
147         {
148             tlog.Debug(tag, $"BuilderGetConstants START");
149
150             var testingTarget = new Builder();
151             Assert.IsNotNull(testingTarget, "Should be not null!");
152             Assert.IsInstanceOf<Builder>(testingTarget, "Should be an Instance of Builder!");
153
154             using (PropertyMap map = new PropertyMap())
155             {
156                 map.Add("Size", new PropertyValue(new Size(20, 30)));
157                 map.Add("Posision", new PropertyValue(new Position(100, 200)));
158
159                 testingTarget.AddConstants(map);
160
161                 var result = testingTarget.GetConstants();
162                 Assert.IsNotNull(result, "Should be not null!");
163                 Assert.IsInstanceOf<PropertyMap>(result, "Should be an Instance of PropertyMap!");
164             }
165
166             testingTarget.Dispose();
167             testingTarget = null;
168             tlog.Debug(tag, $"BuilderGetConstants END (OK)");
169         }
170
171         [Test]
172         [Category("P1")]
173         [Description("Builder GetConstan.")]
174         [Property("SPEC", "Tizen.NUI.Builder.GetConstan M")]
175         [Property("SPEC_URL", "-")]
176         [Property("CRITERIA", "MR")]
177         [Property("AUTHOR", "guowei.wang@samsung.com")]
178         public void BuilderGetConstan()
179         {
180             tlog.Debug(tag, $"BuilderGetConstan START");
181
182             var testingTarget = new Builder();
183             Assert.IsNotNull(testingTarget, "Should be not null!");
184             Assert.IsInstanceOf<Builder>(testingTarget, "Should be an Instance of Builder!");
185
186             testingTarget.AddConstant("Opacity", new PropertyValue(0.5f));
187
188             var result = testingTarget.GetConstant("Opacity");
189             Assert.IsNotNull(result, "Should be not null!");
190             Assert.IsInstanceOf<PropertyValue>(result, "Should be an Instance of PropertyValue!");
191
192             testingTarget.Dispose();
193             testingTarget = null;
194             tlog.Debug(tag, $"BuilderGetConstan END (OK)");
195         }
196
197         [Test]
198         [Category("P1")]
199         [Description("Builder LoadFromFile.")]
200         [Property("SPEC", "Tizen.NUI.Builder.LoadFromFile M")]
201         [Property("SPEC_URL", "-")]
202         [Property("CRITERIA", "MR")]
203         [Property("AUTHOR", "guowei.wang@samsung.com")]
204         public void BuilderLoadFromFile()
205         {
206             tlog.Debug(tag, $"BuilderLoadFromFile START");
207
208             var testingTarget = new Builder();
209             Assert.IsNotNull(testingTarget, "Should be not null!");
210             Assert.IsInstanceOf<Builder>(testingTarget, "Should be an Instance of Builder!");
211
212             try
213             {
214                 testingTarget.LoadFromFile(path);
215             }
216             catch (Exception e)
217             {
218                 tlog.Debug(tag, e.Message.ToString());
219                 Assert.Fail("Caught Exception: Failed!");
220             }
221
222             testingTarget.Dispose();
223             testingTarget = null;
224             tlog.Debug(tag, $"BuilderLoadFromFile END (OK)");
225         }
226
227         [Test]
228         [Category("P2")]
229         [Description("Builder LoadFromFile. Parse failed.")]
230         [Property("SPEC", "Tizen.NUI.Builder.LoadFromFile M")]
231         [Property("SPEC_URL", "-")]
232         [Property("CRITERIA", "MR")]
233         [Property("AUTHOR", "guowei.wang@samsung.com")]
234         public void BuilderLoadFromFileParseFailed()
235         {
236             tlog.Debug(tag, $"BuilderLoadFromFileParseFailed START");
237
238             var testingTarget = new Builder();
239             Assert.IsNotNull(testingTarget, "Should be not null!");
240             Assert.IsInstanceOf<Builder>(testingTarget, "Should be an Instance of Builder!");
241
242             try
243             {
244                 testingTarget.LoadFromFile(Tizen.Applications.Application.Current.DirectoryInfo.Resource + "index.xml");
245             }
246             catch (InvalidOperationException e)
247             {
248                 tlog.Debug(tag, e.Message.ToString());
249                 testingTarget.Dispose();
250                 testingTarget = null;
251                 tlog.Debug(tag, $"BuilderLoadFromFileParseFailed END (OK)");
252                 Assert.Pass("Caught InvalidOperationException: Passed!");
253             }
254         }
255
256         [Test]
257         [Category("P1")]
258         [Description("Builder LoadFromString.")]
259         [Property("SPEC", "Tizen.NUI.Builder.LoadFromString M")]
260         [Property("SPEC_URL", "-")]
261         [Property("CRITERIA", "MR")]
262         [Property("AUTHOR", "guowei.wang@samsung.com")]
263         public void BuilderLoadFromString()
264         {
265             tlog.Debug(tag, $"BuilderLoadFromString START");
266
267             var testingTarget = new Builder();
268             Assert.IsNotNull(testingTarget, "Should be not null!");
269             Assert.IsInstanceOf<Builder>(testingTarget, "Should be an Instance of Builder!");
270
271             try
272             {
273                 testingTarget.LoadFromString("{\"sites\": [{ \"name\":\"caurse\" , \"url\":\"www.runoob.com\" }]}", Builder.UIFormat.JSON);
274             }
275             catch (Exception e)
276             {
277                 tlog.Debug(tag, e.Message.ToString());
278                 Assert.Fail("Caught Exception: Failed!");
279             }
280
281             testingTarget.Dispose();
282             testingTarget = null;
283             tlog.Debug(tag, $"BuilderLoadFromString END (OK)");
284         }
285
286         //[Test]
287         //[Category("P1")]
288         //[Description("Builder Create.")]
289         //[Property("SPEC", "Tizen.NUI.Builder.Create M")]
290         //[Property("SPEC_URL", "-")]
291         //[Property("CRITERIA", "MR")]
292         //[Property("AUTHOR", "guowei.wang@samsung.com")]
293         //public void BuilderCreate()
294         //{
295         //    tlog.Debug(tag, $"BuilderCreate START");
296
297         //    var testingTarget = new Builder();
298         //    Assert.IsNotNull(testingTarget, "Should be not null!");
299         //    Assert.IsInstanceOf<Builder>(testingTarget, "Should be an Instance of Builder!");
300
301         //    try
302         //    {
303         //        testingTarget.Create("{\"View\" : [\"Size\" : \"\"]}");
304         //    }
305         //    catch (Exception e)
306         //    {
307         //        tlog.Debug(tag, e.Message.ToString());
308         //        Assert.Fail("Caught Exception: Failed!");
309         //    }
310
311         //    testingTarget.Dispose();
312         //    testingTarget = null;
313         //    tlog.Debug(tag, $"BuilderCreate END (OK)");
314         //}
315
316         private void MyOnQuit(object sender, EventArgs e)
317         { 
318
319         }
320     }
321 }