[NUI][Non-ACR][Update TCTs for Tizen.NUI] 63/192663/6
authorxb.teng <xb.teng@samsung.com>
Wed, 7 Nov 2018 10:55:51 +0000 (18:55 +0800)
committerxb.teng <xb.teng@samsung.com>
Fri, 30 Nov 2018 10:40:44 +0000 (18:40 +0800)
These testcases should wait next release to verify.

Change-Id: I741378fe998a2818f33939904d9c93967c6ac09b

tct-suite-vs/Tizen.NUI.Manual.Tests/testcase/TSScrollBar.cs [new file with mode: 0755]
tct-suite-vs/Tizen.NUI.Tests/testcase/TSBaseHandle.cs
tct-suite-vs/Tizen.NUI.Tests/testcase/TSPinchGesture.cs
tct-suite-vs/Tizen.NUI.Tests/testcase/TSRelayoutContainer.cs [new file with mode: 0755]
tct-suite-vs/Tizen.NUI.Tests/testcase/TSScrollBar.cs
tct-suite-vs/Tizen.NUI.Tests/testcase/TSScrollView.cs
tct-suite-vs/Tizen.NUI.Tests/testcase/TSTypeInfo.cs [new file with mode: 0755]

diff --git a/tct-suite-vs/Tizen.NUI.Manual.Tests/testcase/TSScrollBar.cs b/tct-suite-vs/Tizen.NUI.Manual.Tests/testcase/TSScrollBar.cs
new file mode 100755 (executable)
index 0000000..f7e149b
--- /dev/null
@@ -0,0 +1,144 @@
+/*
+ *  Copyright (c) 2017 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License
+ */
+
+using System;
+using System.Threading.Tasks;
+using NUnit.Framework;
+using NUnit.Framework.TUnit;
+using Tizen.NUI;
+using Tizen.NUI.UIComponents;
+using Tizen.NUI.BaseComponents;
+
+namespace Tizen.NUI.Tests
+{
+    [TestFixture]
+    [Description("Tizen.NUI.UIComponents.ScrollBar test")]
+    public class ScrollBarTests
+    {
+        private static ManualTestNUI _testPage;
+        private static WearableManualTestNUI _wearTestPage;
+        private static PushButton _button;
+        private static ScrollBar _scrollBar;
+        private static float PointSize = 5.0f;
+        private static TextLabel _label;
+
+        [SetUp]
+        public void Init()
+        {
+            LogUtils.Write(LogUtils.INFO, LogUtils.TAG, "Preconditions for each TEST");
+            if (Window.Instance.Size.Width > 1000)
+            {
+                PointSize = 20.0f;
+            }
+
+            if (ManualTest.IsWearable())
+            {
+                PointSize = 2.0f;
+                _label = ManualTest.CreateLabel("This case is unsuitable for wearable, please press PASS button to continue!");
+                _wearTestPage = WearableManualTestNUI.GetInstance();
+            }
+            else
+            {
+                _testPage = ManualTestNUI.GetInstance();
+            }
+        }
+
+        [TearDown]
+        public void Destroy()
+        {
+            LogUtils.Write(LogUtils.INFO, LogUtils.TAG, "Postconditions for each TEST");
+        }
+
+        private PropertyMap CreateTextMap(float pointSize, string text)
+        {
+            PropertyMap map = new PropertyMap();
+            map.Insert("visualType", new PropertyValue("TEXT"));
+            map.Insert("pointSize", new PropertyValue(pointSize));
+            map.Insert("text", new PropertyValue(text));
+            return map;
+        }
+
+        private void CreateView(string information)
+        {
+            _button = new PushButton();
+            _button.Label = CreateTextMap(PointSize, information);
+
+            // Invoke ExecuteTC() method to add UI to test area.
+            _testPage.ExecuteTC(_button);
+        }
+
+        private void OnPanFinished(object sender, EventArgs e)
+        {
+            Tizen.Log.Fatal("NUI", "TUnit OnPanFinished!");
+            ManualTest.Confirm();
+        }
+
+        [Test]
+        [Category("P1")]
+        [Description("Test: PanFinished should be triggerred without any error.")]
+        [Property("SPEC", "Tizen.NUI.UIComponents.ScrollBar.PanFinished E")]
+        [Property("SPEC_URL", "-")]
+        [Property("CRITERIA", "EVL")]
+        [Property("AUTHOR", "Xianbing Teng, xb.teng@samsung.com")]
+        [Precondition(1, "Prepare a mouse connect to target.")]
+        [Precondition(2, "Open terminal to enter command.")]
+        [Precondition(3, "Enter command \"vconftool set -t bool memory/window_system/input/force_enable_cursor 1 -f\" to enable mouse")]
+        [Step(1, "Click run TC")]
+        [Step(2, "Pan the ScrollBar show on the window")]
+        [Postcondition(1, "NA")]
+        public async Task PanFinished_CB()
+        {
+            if (ManualTest.IsWearable())
+            {
+                _wearTestPage.ExecuteTC(_label);
+                await ManualTest.WaitForConfirm();
+                _wearTestPage.ClearTestCase(_label);
+            }
+            else
+            {
+                CreateView("Use mouse to pan the scrollbar");
+
+                _scrollBar = new ScrollBar(ScrollBar.Direction.Horizontal);
+                _scrollBar.ParentOrigin = ParentOrigin.Center;
+                _scrollBar.PivotPoint = PivotPoint.Center;
+                _scrollBar.PositionUsesPivotPoint = true;
+                _scrollBar.BackgroundColor = Color.Red;
+                _scrollBar.Size2D = new Size2D(400, 30);
+                _scrollBar.IndicatorHeightPolicy = ScrollBar.IndicatorHeightPolicyType.Fixed;
+                _scrollBar.IndicatorFixedHeight = 50;
+                Window.Instance.Add(_scrollBar);
+
+                View sourceActor = new View();
+                Window.Instance.Add(sourceActor);
+
+                // Register the scroll properties
+                int propertyScrollPosition = sourceActor.RegisterProperty("sourcePosition", new PropertyValue(0.0f));
+                int propertyMinScrollPosition = sourceActor.RegisterProperty("sourcePositionMin", new PropertyValue(0.0f));
+                int propertyMaxScrollPosition = sourceActor.RegisterProperty("sourcePositionMax", new PropertyValue(100.0f));
+                int propertyScrollContentSize = sourceActor.RegisterProperty("sourceContentSize", new PropertyValue(500.0f));
+
+                _scrollBar.SetScrollPropertySource(sourceActor, propertyScrollPosition, propertyMinScrollPosition, propertyMaxScrollPosition, propertyScrollContentSize);
+                _scrollBar.PanFinished += OnPanFinished;
+                // Waits for user confirmation.
+                await ManualTest.WaitForConfirm();
+                _scrollBar.PanFinished -= OnPanFinished;
+                Window.Instance.Remove(sourceActor);
+                Window.Instance.Remove(_scrollBar);
+                _testPage.ClearTestCase(_button);
+            }
+        }
+    }
+}
\ No newline at end of file
index 6456cfa..3042998 100755 (executable)
@@ -401,5 +401,29 @@ namespace Tizen.NUI.Tests
             }
         }
 
+        [Test]\r
+        [Category("P1")]\r
+        [Description("Test GetTypeInfo. Check whether GetTypeInfo returns expected value or not.")]\r
+        [Property("SPEC", "Tizen.NUI.BaseHandle.GetTypeInfo M")]\r
+        [Property("SPEC_URL", "-")]\r
+        [Property("CRITERIA", "MR")]\r
+        [Property("AUTHOR", "Xianbing teng, xb.teng@samsung.com")]\r
+        public void GetTypeInfo_CHECK_RETURN_VALUE()\r
+        {\r
+            /* TEST CODE */\r
+            try\r
+            {\r
+                PushButton view = new PushButton();\r
+                var typeInfo = TypeRegistry.Get().GetTypeInfo("PushButton");\r
+                Assert.IsInstanceOf<TypeInfo>(typeInfo, "Should be an instance of TypeInfo type.");\r
+                Assert.True(view.GetTypeInfo(typeInfo), "Should be true");\r
+            }\r
+            catch (Exception e)\r
+            {\r
+                Tizen.Log.Error(TAG, "Caught Exception" + e.ToString());\r
+                LogUtils.Write(LogUtils.DEBUG, LogUtils.TAG, "Caught Exception" + e.ToString());\r
+                Assert.Fail("Caught Exception" + e.ToString());\r
+            }\r
+        }
     }
 }
index e687c6b..5e19753 100755 (executable)
@@ -26,5 +26,119 @@ namespace Tizen.NUI.Tests
         {
             Tizen.Log.Info(TAG, "Destroy() is called!");
         }
+
+        [Test]
+        [Category("P1")]
+        [Description("Create a PinchGesture object. Check whether PinchGesture is successfully created or not.")]
+        [Property("SPEC", "Tizen.NUI.PinchGesture.PinchGesture C")]
+        [Property("SPEC_URL", "-")]
+        [Property("CRITERIA", "CONSTR")]
+        [Property("COVPARAM", "")]
+        [Property("AUTHOR", "Xianbing teng, xb.teng@samsung.com")]
+        public void PanGesture_INIT()
+        {
+            /* TEST CODE */
+            var pinchGesture = new PinchGesture(Gesture.StateType.Started);
+            Assert.IsNotNull(pinchGesture, "Can't create success object PinchGesture");
+            Assert.IsInstanceOf<PinchGesture>(pinchGesture, "Should be an instance of PinchGesture type.");
+        }
+
+        [Test]
+        [Category("P1")]
+        [Description("Test LocalCenterPoint. Check whether GetDistance returns expected value or not.")]
+        [Property("SPEC", "Tizen.NUI.PinchGesture.LocalCenterPoint A")]
+        [Property("SPEC_URL", "-")]
+        [Property("CRITERIA", "PRO")]
+        [Property("AUTHOR", "Xianbing teng, xb.teng@samsung.com")]
+        public void LocalCenterPoint_CHECK_VALUE()
+        {
+            /* TEST CODE */
+            try
+            {
+                var pinchGesture = new PinchGesture(Gesture.StateType.Started);\r
+                Assert.IsInstanceOf<PinchGesture>(pinchGesture, "Should be an instance of PinchGesture type.");\r
+                Assert.GreaterOrEqual(0, pinchGesture.LocalCenterPoint.X, "Should be the default value");\r
+                Assert.GreaterOrEqual(0, pinchGesture.LocalCenterPoint.Y, "Should be the default value");
+            }
+            catch (Exception e)
+            {
+                Tizen.Log.Error(TAG, "Caught Exception" + e.ToString());
+                LogUtils.Write(LogUtils.DEBUG, LogUtils.TAG, "Caught Exception" + e.ToString());
+                Assert.Fail("Caught Exception" + e.ToString());
+            }
+        }\r
+\r
+        [Test]
+        [Category("P1")]
+        [Description("Test Scale. Check whether Scale returns expected value or not.")]
+        [Property("SPEC", "Tizen.NUI.PinchGesture.Scale A")]
+        [Property("SPEC_URL", "-")]
+        [Property("CRITERIA", "PRO")]
+        [Property("AUTHOR", "Xianbing teng, xb.teng@samsung.com")]
+        public void Scale_CHECK_VALUE()
+        {
+            /* TEST CODE */
+            try
+            {
+                var pinchGesture = new PinchGesture(Gesture.StateType.Started);\r
+                Assert.IsInstanceOf<PinchGesture>(pinchGesture, "Should be an instance of PinchGesture type.");\r
+                Assert.GreaterOrEqual(0, pinchGesture.Scale, "Should be the default value");\r
+            }
+            catch (Exception e)
+            {
+                Tizen.Log.Error(TAG, "Caught Exception" + e.ToString());
+                LogUtils.Write(LogUtils.DEBUG, LogUtils.TAG, "Caught Exception" + e.ToString());
+                Assert.Fail("Caught Exception" + e.ToString());
+            }
+        }
+
+        [Test]
+        [Category("P1")]
+        [Description("Test ScreenCenterPoint. Check whether ScreenCenterPoint returns expected value or not.")]
+        [Property("SPEC", "Tizen.NUI.PinchGesture.ScreenCenterPoint A")]
+        [Property("SPEC_URL", "-")]
+        [Property("CRITERIA", "PRO")]
+        [Property("AUTHOR", "Xianbing teng, xb.teng@samsung.com")]
+        public void ScreenCenterPoint_CHECK_VALUE()
+        {
+            /* TEST CODE */
+            try
+            {
+                var pinchGesture = new PinchGesture(Gesture.StateType.Started);\r
+                Assert.IsInstanceOf<PinchGesture>(pinchGesture, "Should be an instance of PinchGesture type.");\r
+                Assert.GreaterOrEqual(0, pinchGesture.ScreenCenterPoint.X, "Should be the default value");\r
+                Assert.GreaterOrEqual(0, pinchGesture.ScreenCenterPoint.Y, "Should be the default value");
+            }
+            catch (Exception e)
+            {
+                Tizen.Log.Error(TAG, "Caught Exception" + e.ToString());
+                LogUtils.Write(LogUtils.DEBUG, LogUtils.TAG, "Caught Exception" + e.ToString());
+                Assert.Fail("Caught Exception" + e.ToString());
+            }
+        }
+
+        [Test]
+        [Category("P1")]
+        [Description("Test Speed. Check whether Speed returns expected value or not.")]
+        [Property("SPEC", "Tizen.NUI.PinchGesture.Speed A")]
+        [Property("SPEC_URL", "-")]
+        [Property("CRITERIA", "PRO")]
+        [Property("AUTHOR", "Xianbing teng, xb.teng@samsung.com")]
+        public void Speed_CHECK_RETURN_VALUE()
+        {
+            /* TEST CODE */
+            try
+            {
+                var pinchGesture = new PinchGesture(Gesture.StateType.Started);\r
+                Assert.IsInstanceOf<PinchGesture>(pinchGesture, "Should be an instance of PinchGesture type.");\r
+                Assert.GreaterOrEqual(0, pinchGesture.Speed, "Should be the default value");\r
+            }
+            catch (Exception e)
+            {
+                Tizen.Log.Error(TAG, "Caught Exception" + e.ToString());
+                LogUtils.Write(LogUtils.DEBUG, LogUtils.TAG, "Caught Exception" + e.ToString());
+                Assert.Fail("Caught Exception" + e.ToString());
+            }
+        }
     }\r
 }
\ No newline at end of file
diff --git a/tct-suite-vs/Tizen.NUI.Tests/testcase/TSRelayoutContainer.cs b/tct-suite-vs/Tizen.NUI.Tests/testcase/TSRelayoutContainer.cs
new file mode 100755 (executable)
index 0000000..14a4398
--- /dev/null
@@ -0,0 +1,120 @@
+using NUnit.Framework;\r
+using NUnit.Framework.TUnit;\r
+using System;\r
+using Tizen.NUI;\r
+using Tizen.NUI.BaseComponents;\r
+using Tizen.NUI.Test;\r
+\r
+namespace Tizen.NUI.Tests\r
+{\r
+    [TestFixture]\r
+    [Description("Tizen.NUI.RelayoutContainer Tests")]\r
+    public class RelayoutContainerTests\r
+    {\r
+        private static string TAG = "NUI";\r
+        private static bool _flagAdd;\r
+        internal class MyView : CustomView\r
+        {\r
+            View view;\r
+            static CustomView CreateInstance()\r
+            {\r
+                return new MyView();\r
+            }\r
+            static MyView()\r
+            {\r
+                CustomViewRegistry.Instance.Register(CreateInstance, typeof(MyView));\r
+            }\r
+\r
+            public MyView() : base(typeof(MyView).FullName, CustomViewBehaviour.ViewBehaviourDefault)\r
+            {\r
+            }\r
+\r
+            public MyView(string typeName, CustomViewBehaviour behaviour) : base(typeName, behaviour)\r
+            {\r
+            }\r
+\r
+            public override void OnInitialize()\r
+            {\r
+                view = new BaseComponents.View();\r
+                view.Size2D = new Size2D(200, 200);\r
+                view.BackgroundColor = Color.Red;\r
+                this.Add(view);\r
+            }\r
+\r
+            public override Size2D GetNaturalSize()\r
+            {\r
+                return new Size2D(200, 200);\r
+            }\r
+\r
+            public override void OnRelayout(Vector2 size, RelayoutContainer container)\r
+            {\r
+                View view = new View();\r
+                view.Size2D = new Size2D(100, 100);\r
+                container.Add(view, new Size2D(100, 100));\r
+                _flagAdd = true;\r
+                base.OnRelayout(size, container);\r
+            }\r
+\r
+            public void AddVisual(PropertyMap propertyMap)\r
+            {\r
+                int visualIndex = RegisterProperty("MyVisual", new PropertyValue("MyVisual"), PropertyAccessMode.ReadWrite);\r
+                if (visualIndex > 0)\r
+                {\r
+                    VisualBase visual = VisualFactory.Instance.CreateVisual(propertyMap); // Create a visual for the new one.\r
+                    RegisterVisual(visualIndex, visual);\r
+\r
+                    RelayoutRequest();\r
+                }\r
+            }\r
+        }\r
+\r
+        [SetUp]\r
+        public void Init()\r
+        {\r
+            Tizen.Log.Info(TAG, "Init() is called!");\r
+            App.MainTitleChangeText("RelayoutContainerTests");\r
+            App.MainTitleChangeBackgroundColor(null);\r
+        }\r
+\r
+        [TearDown]\r
+        public void Destroy()\r
+        {\r
+            Tizen.Log.Info(TAG, "Destroy() is called!");\r
+        }\r
+\r
+        [Test]\r
+        [Category("P1")]\r
+        [Description("Test Add check whether works ok or not.")]\r
+        [Property("SPEC", "Tizen.NUI.RelayoutContainer.Add M")]\r
+        [Property("SPEC_URL", "-")]\r
+        [Property("CRITERIA", "MR")]\r
+        [Property("AUTHOR", "Xianbing teng, xb.teng@samsung.com")]\r
+        public void Add_CHECK_RETURN_VALUE()\r
+        {\r
+            /* TEST CODE */\r
+            MyView myView = new MyView();\r
+            Assert.IsInstanceOf<MyView>(myView, "Should be an instance of MyView2 type.");\r
+            Window.Instance.Add(myView);\r
+            try\r
+            {\r
+                _flagAdd = false;\r
+                Assert.False(_flagAdd, "Should be false");\r
+                PropertyMap propertyMap = new PropertyMap();\r
+                propertyMap.Add(Visual.Property.Type, new PropertyValue((int)Visual.Type.Color));\r
+                propertyMap.Add(ColorVisualProperty.MixColor, new PropertyValue(Color.Blue));\r
+                myView.AddVisual(propertyMap);\r
+                Assert.True(_flagAdd, "Should be true");\r
+            }\r
+            catch (Exception e)\r
+            {\r
+                Tizen.Log.Error(TAG, "Caught Exception" + e.ToString());\r
+                LogUtils.Write(LogUtils.DEBUG, LogUtils.TAG, "Caught Exception" + e.ToString());\r
+                Assert.Fail("Caught Exception" + e.ToString());\r
+            }\r
+            finally\r
+            {\r
+                Window.Instance.Remove(myView);\r
+            }\r
+        }\r
+    }\r
+}
\ No newline at end of file
index f493d7e..e4d1f91 100755 (executable)
@@ -2,8 +2,10 @@ using NUnit.Framework;
 using NUnit.Framework.TUnit;
 using System;
 using Tizen.NUI;
+using Tizen.NUI.BaseComponents;
 using Tizen.NUI.UIComponents;
 using Tizen.NUI.Test;
+using System.Threading.Tasks;
 
 namespace Tizen.NUI.Tests
 {
@@ -12,6 +14,12 @@ namespace Tizen.NUI.Tests
     public class ScrollBarTests
     {
         private static string TAG = "NUI";
+        private static bool _flagScrollInterval;
+
+        private void OnScrollInterval(object sender, EventArgs e)
+        {
+            _flagScrollInterval = true;
+        }
 
         [SetUp]
         public void Init()
@@ -222,5 +230,58 @@ namespace Tizen.NUI.Tests
                 Assert.Fail("Caught Exception" + e.ToString());
             }
         }
+
+        [Test]
+        [Category("P1")]
+        [Description("Test ScrollInterval. Test whether the ScrollInterval event will be triggered.")]
+        [Property("SPEC", "Tizen.NUI.UIComponents.ScrollBar.ScrollInterval E")]
+        [Property("SPEC_URL", "-")]
+        [Property("CRITERIA", "EVL")]
+        [Property("AUTHOR", "Xianbing teng, xb.teng@samsung.com")]
+        public async Task ScrollInterval_CHECK_EVENT()
+        {
+            /*TEST CODE*/
+            var scrollBar = new ScrollBar();
+            Assert.IsInstanceOf<ScrollBar>(scrollBar, "Should be an instance of ScrollBar type.");
+            Window.Instance.Add(scrollBar);
+            View sourceView = new View();
+            Assert.IsInstanceOf<View>(sourceView, "Should be an instance of View type.");
+            Window.Instance.Add(sourceView);
+            try\r
+            {\r
+                _flagScrollInterval = false;\r
+                Assert.False(_flagScrollInterval, "_flagScrollInterval should false initial");\r
+                scrollBar.ScrollInterval += OnScrollInterval;\r
+                int propertyScrollPosition = sourceView.RegisterProperty("sourcePosition", new PropertyValue(0.0f));\r
+                int propertyMinScrollPosition = sourceView.RegisterProperty("sourcePositionMin", new PropertyValue(0.0f));\r
+                int propertyMaxScrollPosition = sourceView.RegisterProperty("sourcePositionMax", new PropertyValue(800.0f));\r
+                int propertyScrollContentSize = sourceView.RegisterProperty("sourceContentSize", new PropertyValue(2000.0f));\r
+                scrollBar.SetScrollPropertySource(sourceView, propertyScrollPosition, propertyMinScrollPosition, propertyMaxScrollPosition, propertyScrollContentSize);\r
+                PropertyArray positionIntervals = new PropertyArray();\r
+                for (int i = 0; i != 10; ++i)\r
+                {\r
+                    positionIntervals.PushBack(new PropertyValue(-80.0f * i)); // should get notified for each 80 pixels\r
+                }\r
+                scrollBar.ScrollPositionIntervals = (positionIntervals);\r
+                Animation animation = new Animation(100);\r
+                animation.AnimateTo(sourceView, "sourcePosition", -170.0f);\r
+                animation.Play();\r
+\r
+                await Task.Delay(110);\r
+                Assert.True(_flagScrollInterval, "_flagScrollInterval should be true.");
+            }
+            catch (Exception e)
+            {\r
+                Tizen.Log.Error(TAG, "Caught Exception" + e.ToString());\r
+                LogUtils.Write(LogUtils.DEBUG, LogUtils.TAG, "Caught Exception" + e.ToString());\r
+                Assert.Fail("Caught Exception" + e.ToString());\r
+            }
+            finally
+            {\r
+                scrollBar.ScrollInterval -= OnScrollInterval;\r
+                Window.Instance.Remove(scrollBar);\r
+                Window.Instance.Remove(sourceView);\r
+            }
+        }
     }
 }
index 04c320c..c63dfec 100755 (executable)
@@ -4,6 +4,7 @@ using System;
 using Tizen.NUI;
 using Tizen.NUI.BaseComponents;
 using Tizen.NUI.Test;
+using System.Threading.Tasks;
 
 namespace Tizen.NUI.Tests
 {
@@ -13,6 +14,12 @@ namespace Tizen.NUI.Tests
     public class ScrollViewTests
     {
         private static string TAG = "NUI";
+        private static bool _flagSnapStarted;
+
+        private void OnSnapStarted(object sender, EventArgs e)
+        {
+            _flagSnapStarted = true;
+        }
 
         [SetUp]
         public void Init()
@@ -1430,13 +1437,104 @@ namespace Tizen.NUI.Tests
                 Assert.Fail("Caught Exception" + e.ToString());
             }
         }
-    }
 
-    public class ScrollViewPagePathEffect : ScrollViewEffect
-    {
-        public ScrollViewPagePathEffect()
+        [Test]
+        [Category("P1")]
+        [Description("Test ApplyEffect whether works or not.")]
+        [Property("SPEC", "Tizen.NUI.ScrollView.ApplyEffect M")]
+        [Property("SPEC_URL", "-")]
+        [Property("CRITERIA", "MR")]
+        [Property("AUTHOR", "Xianbing Teng, xb.teng@samsung.com")]
+        public void ApplyEffect_CHECK()
         {
+            var scrollView = new ScrollView();\r
+            Assert.IsInstanceOf<ScrollView>(scrollView, "Should be an instance of ScrollView type.");\r
+            Window.Instance.Add(scrollView);
+            /* TEST CODE */
+            try
+            {
+                Path path = new Path();\r
+                ScrollViewEffect scrollViewEffect = new ScrollViewPagePathEffect(path, new Vector3(-1.0f, 0, 0), ScrollView.Property.SCROLL_FINAL_X, new Vector3(100.0f, 100.0f, 0.0f), 2);\r
+                scrollView.ApplyEffect(scrollViewEffect);
+            }
+            catch (Exception e)
+            {
+                Tizen.Log.Error(TAG, "Caught Exception" + e.ToString());
+                LogUtils.Write(LogUtils.DEBUG, LogUtils.TAG, "Caught Exception" + e.ToString());
+                Assert.Fail("Caught Exception" + e.ToString());
+            }
+            finally
+            {\r
+                Window.Instance.Remove(scrollView);\r
+            }
         }
-    }
 
+        [Test]
+        [Category("P1")]
+        [Description("Test RemoveEffect whether works or not.")]
+        [Property("SPEC", "Tizen.NUI.ScrollView.RemoveEffect M")]
+        [Property("SPEC_URL", "-")]
+        [Property("CRITERIA", "MR")]
+        [Property("AUTHOR", "Xianbing Teng, xb.teng@samsung.com")]
+        public void RemoveEffect_CHECK()
+        {\r
+            var scrollView = new ScrollView();\r
+            Assert.IsInstanceOf<ScrollView>(scrollView, "Should be an instance of ScrollView type.");\r
+            Window.Instance.Add(scrollView);
+            /* TEST CODE */
+            try
+            {
+                Path path = new Path();\r
+                ScrollViewEffect scrollViewEffect = new ScrollViewPagePathEffect(path, new Vector3(-1.0f, 0, 0), ScrollView.Property.SCROLL_FINAL_X, new Vector3(100.0f, 100.0f, 0.0f), 2);\r
+                scrollView.ApplyEffect(scrollViewEffect);
+                scrollView.RemoveEffect(scrollViewEffect);
+            }
+            catch (Exception e)
+            {
+                Tizen.Log.Error(TAG, "Caught Exception" + e.ToString());
+                LogUtils.Write(LogUtils.DEBUG, LogUtils.TAG, "Caught Exception" + e.ToString());
+                Assert.Fail("Caught Exception" + e.ToString());
+            }
+            finally
+            {\r
+                Window.Instance.Remove(scrollView);\r
+            }
+        }
+
+        [Test]
+        [Category("P1")]
+        [Description("Test SnapStarted. Test whether the SnapStarted event will be triggered.")]
+        [Property("SPEC", "Tizen.NUI.ScrollView.SnapStarted E")]
+        [Property("SPEC_URL", "-")]
+        [Property("CRITERIA", "EVL")]
+        [Property("AUTHOR", "Xianbing teng, xb.teng@samsung.com")]
+        public async Task SnapStarted_CHECK_EVENT()
+        {
+            /*TEST CODE*/
+            var scrollView = new ScrollView();
+            Assert.IsInstanceOf<ScrollView>(scrollView, "Should be an instance of ScrollView type.");
+            scrollView.Size2D = new Size2D(400, 400);
+            Window.Instance.Add(scrollView);
+            try\r
+            {\r
+                _flagSnapStarted = false;\r
+                Assert.False(_flagSnapStarted, "_flagSnapStarted should false initial");\r
+                scrollView.SnapStarted += OnSnapStarted;\r
+                scrollView.ScrollTo(new Vector2(300, 100), 0.0f);\r
+                await Task.Delay(100);\r
+                Assert.True(_flagSnapStarted, "_flagSnapStarted should be true.");
+            }
+            catch (Exception e)
+            {\r
+                Tizen.Log.Error(TAG, "Caught Exception" + e.ToString());\r
+                LogUtils.Write(LogUtils.DEBUG, LogUtils.TAG, "Caught Exception" + e.ToString());\r
+                Assert.Fail("Caught Exception" + e.ToString());\r
+            }
+            finally
+            {\r
+                scrollView.SnapStarted -= OnSnapStarted;\r
+                Window.Instance.Remove(scrollView);\r
+            }
+        }
+    }
 }
diff --git a/tct-suite-vs/Tizen.NUI.Tests/testcase/TSTypeInfo.cs b/tct-suite-vs/Tizen.NUI.Tests/testcase/TSTypeInfo.cs
new file mode 100755 (executable)
index 0000000..53a0995
--- /dev/null
@@ -0,0 +1,176 @@
+using NUnit.Framework;\r
+using NUnit.Framework.TUnit;\r
+using System;\r
+using Tizen.NUI;\r
+using Tizen.NUI.UIComponents;\r
+using Tizen.NUI.Test;\r
+namespace Tizen.NUI.Tests\r
+{\r
+    [TestFixture]\r
+    [Description("Tizen.NUI.TypeInfo Tests")]\r
+    public class TypeInfoTests\r
+    {\r
+        private static string TAG = "NUI";\r
+\r
+        [SetUp]\r
+        public void Init()\r
+        {\r
+            Tizen.Log.Info(TAG, "Init() is called!");\r
+            App.MainTitleChangeText("TypeInfoTests");\r
+            App.MainTitleChangeBackgroundColor(null);\r
+        }\r
+\r
+        [TearDown]\r
+        public void Destroy()\r
+        {\r
+            Tizen.Log.Info(TAG, "Destroy() is called!");\r
+        }\r
+\r
+        [Test]\r
+        [Category("P1")]\r
+        [Description("Create a TypeInfo object. Check whether TypeInfo is successfully created or not.")]\r
+        [Property("SPEC", "Tizen.NUI.TypeInfo.TypeInfo C")]\r
+        [Property("SPEC_URL", "-")]\r
+        [Property("CRITERIA", "CONSTR")]\r
+        [Property("AUTHOR", "Xianbing Teng, xb.teng@samsung.com")]\r
+        public void TypeInfo_INIT()\r
+        {\r
+            /* TEST CODE */\r
+            var typeInfo = new TypeInfo();\r
+            Assert.IsNotNull(typeInfo, "Can't create success object TypeInfo");\r
+            Assert.IsInstanceOf<TypeInfo>(typeInfo, "Should be an instance of TypeInfo type.");\r
+        }\r
+\r
+        [Test]\r
+        [Category("P1")]\r
+        [Description("Create a TypeInfo object. Check whether TypeInfo is successfully created or not.")]\r
+        [Property("SPEC", "Tizen.NUI.TypeInfo.TypeInfo C")]\r
+        [Property("SPEC_URL", "-")]\r
+        [Property("CRITERIA", "CONSTR")]\r
+        [Property("COVPARAM", "Tizen.NUI.TypeInfo")]\r
+        [Property("AUTHOR", "Xianbing Teng, xb.teng@samsung.com")]\r
+        public void TypeInfo_INIT_WITH_TYPEINFO()\r
+        {\r
+            /* TEST CODE */\r
+            var typeInfo = TypeRegistry.Get().GetTypeInfo("PushButton");\r
+            Assert.IsInstanceOf<TypeInfo>(typeInfo, "Should be an instance of TypeInfo type.");\r
+            var typeInfo2 = new TypeInfo(typeInfo);\r
+            Assert.IsInstanceOf<TypeInfo>(typeInfo2, "Should be an instance of TypeInfo type.");\r
+            Assert.IsNotNull(typeInfo2, "Can't create success object TypeInfo");\r
+        }\r
+\r
+        [Test]\r
+        [Category("P1")]\r
+        [Description("Test CreateInstance. Check whether CreateInstance returns expected value or not.")]\r
+        [Property("SPEC", "Tizen.NUI.TypeInfo.CreateInstance M")]\r
+        [Property("SPEC_URL", "-")]\r
+        [Property("CRITERIA", "MR")]\r
+        [Property("AUTHOR", "Xianbing teng, xb.teng@samsung.com")]\r
+        public void CreateInstance_CHECK_RETURN_VALUE()\r
+        {\r
+            /* TEST CODE */\r
+            var typeInfo = TypeRegistry.Get().GetTypeInfo("PushButton");\r
+            Assert.IsInstanceOf<TypeInfo>(typeInfo, "Should be an instance of TypeInfo type.");\r
+            BaseHandle baseHandle = typeInfo.CreateInstance();\r
+            Assert.IsNotNull(baseHandle, "Can't create success object TypeInfo");\r
+        }\r
+\r
+        [Test]\r
+        [Category("P1")]\r
+        [Description("Test GetBaseName. Check whether GetBaseName returns expected value or not.")]\r
+        [Property("SPEC", "Tizen.NUI.TypeInfo.GetBaseName M")]\r
+        [Property("SPEC_URL", "-")]\r
+        [Property("CRITERIA", "MR")]\r
+        [Property("AUTHOR", "Xianbing teng, xb.teng@samsung.com")]\r
+        public void GetBaseName_CHECK_RETURN_VALUE()\r
+        {\r
+            /* TEST CODE */\r
+            try\r
+            {\r
+                var typeInfo = TypeRegistry.Get().GetTypeInfo("PushButton");\r
+                Assert.IsInstanceOf<TypeInfo>(typeInfo, "Should be an instance of TypeInfo type.");\r
+                Assert.AreEqual("Button", typeInfo.GetBaseName(), "Should be equal");\r
+            }\r
+            catch (Exception e)\r
+            {\r
+                Tizen.Log.Error(TAG, "Caught Exception" + e.ToString());\r
+                LogUtils.Write(LogUtils.DEBUG, LogUtils.TAG, "Caught Exception" + e.ToString());\r
+                Assert.Fail("Caught Exception" + e.ToString());\r
+            }\r
+        }\r
+\r
+        [Test]\r
+        [Category("P1")]\r
+        [Description("Test GetName. Check whether GetName returns expected value or not.")]\r
+        [Property("SPEC", "Tizen.NUI.TypeInfo.GetName M")]\r
+        [Property("SPEC_URL", "-")]\r
+        [Property("CRITERIA", "MR")]\r
+        [Property("AUTHOR", "Xianbing teng, xb.teng@samsung.com")]\r
+        public void GetName_CHECK_RETURN_VALUE()\r
+        {\r
+            /* TEST CODE */\r
+            try\r
+            {\r
+                var typeInfo = TypeRegistry.Get().GetTypeInfo("PushButton");\r
+                Assert.IsInstanceOf<TypeInfo>(typeInfo, "Should be an instance of TypeInfo type.");\r
+                Assert.AreEqual("PushButton", typeInfo.GetName(), "Should be equal");\r
+            }\r
+            catch (Exception e)\r
+            {\r
+                Tizen.Log.Error(TAG, "Caught Exception" + e.ToString());\r
+                LogUtils.Write(LogUtils.DEBUG, LogUtils.TAG, "Caught Exception" + e.ToString());\r
+                Assert.Fail("Caught Exception" + e.ToString());\r
+            }\r
+        }\r
+\r
+        [Test]\r
+        [Category("P1")]\r
+        [Description("Test GetPropertyCount. Check whether GetPropertyCount returns expected value or not.")]\r
+        [Property("SPEC", "Tizen.NUI.TypeInfo.GetPropertyCount M")]\r
+        [Property("SPEC_URL", "-")]\r
+        [Property("CRITERIA", "MR")]\r
+        [Property("AUTHOR", "Xianbing teng, xb.teng@samsung.com")]\r
+        public void GetPropertyCount_CHECK_RETURN_VALUE()\r
+        {\r
+            /* TEST CODE */\r
+            try\r
+            {\r
+                var typeInfo = TypeRegistry.Get().GetTypeInfo("PushButton");\r
+                Assert.IsInstanceOf<TypeInfo>(typeInfo, "Should be an instance of TypeInfo type.");\r
+                Assert.Greater(0, typeInfo.GetPropertyCount(), "The property count should greater than 0");\r
+            }\r
+            catch (Exception e)\r
+            {\r
+                Tizen.Log.Error(TAG, "Caught Exception" + e.ToString());\r
+                LogUtils.Write(LogUtils.DEBUG, LogUtils.TAG, "Caught Exception" + e.ToString());\r
+                Assert.Fail("Caught Exception" + e.ToString());\r
+            }\r
+        }\r
+\r
+        [Test]\r
+        [Category("P1")]\r
+        [Description("Test GetPropertyName. Check whether GetPropertyName returns expected value or not.")]\r
+        [Property("SPEC", "Tizen.NUI.TypeInfo.GetPropertyName M")]\r
+        [Property("SPEC_URL", "-")]\r
+        [Property("CRITERIA", "MR")]\r
+        [Property("AUTHOR", "Xianbing teng, xb.teng@samsung.com")]\r
+        public void GetPropertyName_CHECK_RETURN_VALUE()\r
+        {\r
+            /* TEST CODE */\r
+            try\r
+            {\r
+                var typeInfo = TypeRegistry.Get().GetTypeInfo("PushButton");\r
+                Assert.IsInstanceOf<TypeInfo>(typeInfo, "Should be an instance of TypeInfo type.");\r
+                PushButton view = new PushButton();\r
+                int propertyIndex = view.GetPropertyIndex("label");\r
+                Assert.AreEqual("label", typeInfo.GetPropertyName(propertyIndex), "Should be equal");\r
+            }\r
+            catch (Exception e)\r
+            {\r
+                Tizen.Log.Error(TAG, "Caught Exception" + e.ToString());\r
+                LogUtils.Write(LogUtils.DEBUG, LogUtils.TAG, "Caught Exception" + e.ToString());\r
+                Assert.Fail("Caught Exception" + e.ToString());\r
+            }\r
+        }\r
+    }\r
+}
\ No newline at end of file