a5df9c11e9eaf60e16255a869bfd8ecc5c6a66ad
[platform/core/csapi/tizenfx.git] / test / Tizen.NUI.Tests / Tizen.NUI.Devel.Tests / testcase / internal / Xaml / TSMarkupExpressionParser.cs
1 using NUnit.Framework;
2 using System;
3 using Tizen.NUI.Xaml;
4
5 namespace Tizen.NUI.Devel.Tests
6 {
7     using tlog = Tizen.Log;
8
9     [TestFixture]
10     [Description("internal/Xaml/MarkupExpressionParser")]
11     public class InternalXamlMarkupExpressionParserTest
12     {
13         private const string tag = "NUITEST";
14         private MarkupExpressionParserImplement m1;
15
16         [SetUp]
17         public void Init()
18         {
19             tlog.Info(tag, "Init() is called!");
20             m1 = new MarkupExpressionParserImplement();
21         }
22
23         [TearDown]
24         public void Destroy()
25         {
26             m1 = null;
27             tlog.Info(tag, "Destroy() is called!");
28         }
29
30         private class MarkupExpressionParserImplement : MarkupExpressionParser
31         {
32             protected override void SetPropertyValue(string prop, string strValue, object value, IServiceProvider serviceProvider)
33             {
34                 return;
35             }
36
37             public void CallHandleProperty()
38             {
39                 IServiceProviderImplement serviceProviderImplement = new IServiceProviderImplement();
40                 string s1 = new string('a', 1);
41                 HandleProperty("length", serviceProviderImplement, ref s1, true);
42             }
43
44             public void CallGetNextPiece()
45             {
46                 string s1 = new string('a', 4);
47
48                 GetNextPiece(ref s1, out char next);
49             }
50         }
51
52         public class IServiceProviderImplement : IServiceProvider
53         {
54             public object GetService(Type serviceType)
55             {
56                 return null;
57             }
58         }
59
60         [Test]
61         [Category("P1")]
62         [Description("MarkupExpressionParser ParseExpression")]
63         [Property("SPEC", "Tizen.NUI.MarkupExpressionParser.ParseExpression M")]
64         [Property("SPEC_URL", "-")]
65         [Property("CRITERIA", "MR")]
66         public void MarkupExpressionParserParseExpression()
67         {
68             tlog.Debug(tag, $"MarkupExpressionParserParseExpression START");
69
70             try
71             {
72                 string s1 = new string('a', 4);
73
74                 IServiceProviderImplement serviceProviderImplement = new IServiceProviderImplement();
75                 m1.ParseExpression(ref s1, serviceProviderImplement);
76             }
77             catch (Exception e)
78             {
79                 tlog.Debug(tag, e.Message.ToString());
80                 tlog.Debug(tag, $"MarkupExpressionParserParseExpression END (OK)");
81                 Assert.Pass("Caught Exception : passed!");
82             }
83         }
84
85         [Test]
86         [Category("P1")]
87         [Description("MarkupExpressionParser MatchMarkup")]
88         [Property("SPEC", "Tizen.NUI.MarkupExpressionParser.MatchMarkup M")]
89         [Property("SPEC_URL", "-")]
90         [Property("CRITERIA", "MR")]
91         public void MarkupExpressionParserMatchMarkup()
92         {
93             tlog.Debug(tag, $"MarkupExpressionParserMatchMarkup START");
94
95             try
96             {
97                 string s1 = new string('a', 1);
98                 MarkupExpressionParser.MatchMarkup(out s1, "a+b", out int i1);
99             }
100             catch (Exception e)
101             {
102                 Tizen.Log.Error(tag, "Caught Exception" + e.ToString());
103                 Assert.Fail("Caught Exception" + e.ToString());
104             }
105
106             tlog.Debug(tag, $"MarkupExpressionParserMatchMarkup END (OK)");
107             Assert.Pass("MarkupExpressionParserMatchMarkup");
108         }
109
110         [Test]
111         [Category("P1")]
112         [Description("MarkupExpressionParser HandleProperty")]
113         [Property("SPEC", "Tizen.NUI.MarkupExpressionParser.HandleProperty M")]
114         [Property("SPEC_URL", "-")]
115         [Property("CRITERIA", "MR")]
116         public void MarkupExpressionParserHandleProperty()
117         {
118             tlog.Debug(tag, $"MarkupExpressionParserHandleProperty START");
119
120             try
121             {
122                 m1.CallHandleProperty();
123             }
124             catch (Exception e)
125             {
126                 Tizen.Log.Error(tag, "Caught Exception" + e.ToString());
127                 Assert.Fail("Caught Exception" + e.ToString());
128             }
129
130             tlog.Debug(tag, $"MarkupExpressionParserHandleProperty END (OK)");
131             Assert.Pass("MarkupExpressionParserHandleProperty");
132         }
133
134         [Test]
135         [Category("P1")]
136         [Description("MarkupExpressionParser GetNextPiece")]
137         [Property("SPEC", "Tizen.NUI.MarkupExpressionParser.GetNextPiece M")]
138         [Property("SPEC_URL", "-")]
139         [Property("CRITERIA", "MR")]
140         public void MarkupExpressionParserGetNextPiece()
141         {
142             tlog.Debug(tag, $"MarkupExpressionParserGetNextPiece START");
143
144             try
145             {
146                 m1.CallGetNextPiece();
147             }
148             catch (Exception e)
149             {
150                 tlog.Debug(tag, e.Message.ToString());
151                 tlog.Debug(tag, $"MarkupExpressionParserGetNextPiece END (OK)");
152                 Assert.Pass("Caught Exception : passed!");
153             }
154
155         }
156     }
157 }