[NUI] Add TC template for coverage
authorDongsug Song <dongsug.song@samsung.com>
Thu, 4 Feb 2021 08:24:31 +0000 (17:24 +0900)
committerheeyongsong <35289263+heeyongsong@users.noreply.github.com>
Tue, 9 Feb 2021 05:36:55 +0000 (14:36 +0900)
13 files changed:
src/Tizen.NUI/src/internal/Common/FriendAssembly.cs
test/Tizen.NUI.Tests/Tizen.NUI.TCT.sln
test/Tizen.NUI.Tests/Tizen.NUI.TCT/NuiSample.snk [new file with mode: 0755]
test/Tizen.NUI.Tests/Tizen.NUI.TCT/Program.cs
test/Tizen.NUI.Tests/Tizen.NUI.TCT/Properties/Resources.Designer.cs [deleted file]
test/Tizen.NUI.Tests/Tizen.NUI.TCT/Properties/Resources.resx [deleted file]
test/Tizen.NUI.Tests/Tizen.NUI.TCT/Tizen.NUI.Devel.Tests.csproj
test/Tizen.NUI.Tests/Tizen.NUI.TCT/testcase/etc/TSButtonExample.cs [moved from test/Tizen.NUI.Tests/Tizen.NUI.TCT/testcase/TSButtonExample.cs with 99% similarity]
test/Tizen.NUI.Tests/Tizen.NUI.TCT/testcase/etc/TSLottieAnimationView.cs [moved from test/Tizen.NUI.Tests/Tizen.NUI.TCT/testcase/TSLottieAnimationView.cs with 98% similarity]
test/Tizen.NUI.Tests/Tizen.NUI.TCT/testcase/etc/ViewMemoryLeakTest.cs [moved from test/Tizen.NUI.Tests/Tizen.NUI.TCT/testcase/ViewMemoryLeakTest.cs with 99% similarity]
test/Tizen.NUI.Tests/Tizen.NUI.TCT/testcase/internal/Accessibility/TSAccessibilityActionSignal.cs [new file with mode: 0755]
test/Tizen.NUI.Tests/Tizen.NUI.TCT/testcase/internal/Accessibility/TSAccessibilityFocusOvershotSignal.cs [new file with mode: 0755]
test/Tizen.NUI.Tests/Tizen.NUI.TCT/tizen-manifest.xml

index 6ca5163..7037dbe 100755 (executable)
@@ -37,6 +37,7 @@ using System.Runtime.CompilerServices;
 [assembly: InternalsVisibleTo("Tizen.TV.NUI.Example, " + Tizen.NUI.PublicKey.TizenTV)]
 
 [assembly: InternalsVisibleTo("NuiSample, " + Tizen.NUI.PublicKey.Sample)]
+[assembly: InternalsVisibleTo("Tizen.NUI.Devel.Tests, " + Tizen.NUI.PublicKey.Sample)]
 
 namespace Tizen.NUI
 {
index 8bf5b0e..39a4478 100755 (executable)
@@ -24,6 +24,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Tizen.System.Information",
 EndProject
 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Tizen", "..\..\src\Tizen\Tizen.csproj", "{2CF2BA0A-198E-4B8F-B5C4-2645AFBA85FA}"
 EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Tizen.System.Feedback", "..\..\src\Tizen.System.Feedback\Tizen.System.Feedback.csproj", "{999E72B5-7822-4187-973A-08800270716A}"
+EndProject
 Global
        GlobalSection(SolutionConfigurationPlatforms) = preSolution
                Debug|Any CPU = Debug|Any CPU
@@ -97,6 +99,12 @@ Global
                {2CF2BA0A-198E-4B8F-B5C4-2645AFBA85FA}.NUI|Any CPU.Build.0 = Debug|Any CPU
                {2CF2BA0A-198E-4B8F-B5C4-2645AFBA85FA}.Release|Any CPU.ActiveCfg = Release|Any CPU
                {2CF2BA0A-198E-4B8F-B5C4-2645AFBA85FA}.Release|Any CPU.Build.0 = Release|Any CPU
+               {999E72B5-7822-4187-973A-08800270716A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {999E72B5-7822-4187-973A-08800270716A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {999E72B5-7822-4187-973A-08800270716A}.NUI|Any CPU.ActiveCfg = Release|Any CPU
+               {999E72B5-7822-4187-973A-08800270716A}.NUI|Any CPU.Build.0 = Release|Any CPU
+               {999E72B5-7822-4187-973A-08800270716A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {999E72B5-7822-4187-973A-08800270716A}.Release|Any CPU.Build.0 = Release|Any CPU
        EndGlobalSection
        GlobalSection(SolutionProperties) = preSolution
                HideSolutionNode = FALSE
diff --git a/test/Tizen.NUI.Tests/Tizen.NUI.TCT/NuiSample.snk b/test/Tizen.NUI.Tests/Tizen.NUI.TCT/NuiSample.snk
new file mode 100755 (executable)
index 0000000..d21014f
Binary files /dev/null and b/test/Tizen.NUI.Tests/Tizen.NUI.TCT/NuiSample.snk differ
index f98e2e1..f982259 100755 (executable)
@@ -40,12 +40,18 @@ namespace Tizen.NUI.Devel.Tests
         float textSize = 30.0f;
         Window window;
         Layer layer;
+        public static int mainPid;
+        public static int mainTid;
+
         protected override void OnCreate()
         {
             base.OnCreate();
 
             tlog.Debug(tag, "OnCreate() START!");
 
+            mainPid = Process.GetCurrentProcess().Id;
+            mainTid = Thread.CurrentThread.ManagedThreadId;
+
             window = NUIApplication.GetDefaultWindow();
             window.BackgroundColor = Color.Green;
 
diff --git a/test/Tizen.NUI.Tests/Tizen.NUI.TCT/Properties/Resources.Designer.cs b/test/Tizen.NUI.Tests/Tizen.NUI.TCT/Properties/Resources.Designer.cs
deleted file mode 100755 (executable)
index 1851441..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-//------------------------------------------------------------------------------
-// <auto-generated>
-//     This code was generated by a tool.
-//     Runtime Version:4.0.30319.42000
-//
-//     Changes to this file may cause incorrect behavior and will be lost if
-//     the code is regenerated.
-// </auto-generated>
-//------------------------------------------------------------------------------
-
-namespace Tizen.NUI.Devel.Tests.Properties {
-    using System;
-
-
-    /// <summary>
-    ///   A strongly-typed resource class, for looking up localized strings, etc.
-    /// </summary>
-    // This class was auto-generated by the StronglyTypedResourceBuilder
-    // class via a tool like ResGen or Visual Studio.
-    // To add or remove a member, edit your .ResX file then rerun ResGen
-    // with the /str option, or rebuild your VS project.
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")]
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    internal class Resources {
-
-        private static global::System.Resources.ResourceManager resourceMan;
-
-        private static global::System.Globalization.CultureInfo resourceCulture;
-
-        [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
-        internal Resources() {
-        }
-
-        /// <summary>
-        ///   Returns the cached ResourceManager instance used by this class.
-        /// </summary>
-        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
-        internal static global::System.Resources.ResourceManager ResourceManager {
-            get {
-                if (object.ReferenceEquals(resourceMan, null)) {
-                    global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Tizen.NUI.Devel.Tests.Properties.Resources", typeof(Resources).Assembly);
-                    resourceMan = temp;
-                }
-                return resourceMan;
-            }
-        }
-
-        /// <summary>
-        ///   Overrides the current thread's CurrentUICulture property for all
-        ///   resource lookups using this strongly typed resource class.
-        /// </summary>
-        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
-        internal static global::System.Globalization.CultureInfo Culture {
-            get {
-                return resourceCulture;
-            }
-            set {
-                resourceCulture = value;
-            }
-        }
-    }
-}
diff --git a/test/Tizen.NUI.Tests/Tizen.NUI.TCT/Properties/Resources.resx b/test/Tizen.NUI.Tests/Tizen.NUI.TCT/Properties/Resources.resx
deleted file mode 100755 (executable)
index 16d0353..0000000
+++ /dev/null
@@ -1,124 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
-  <!--
-    Microsoft ResX Schema
-
-    Version 2.0
-
-    The primary goals of this format is to allow a simple XML format
-    that is mostly human readable. The generation and parsing of the
-    various data types are done through the TypeConverter classes
-    associated with the data types.
-
-    Example:
-
-    ... ado.net/XML headers & schema ...
-    <resheader name="resmimetype">text/microsoft-resx</resheader>
-    <resheader name="version">2.0</resheader>
-    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
-    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
-    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
-    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
-    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
-        <value>[base64 mime encoded serialized .NET Framework object]</value>
-    </data>
-    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
-        <comment>This is a comment</comment>
-    </data>
-
-    There are any number of "resheader" rows that contain simple
-    name/value pairs.
-
-    Each data row contains a name, and value. The row also contains a
-    type or mimetype. Type corresponds to a .NET class that support
-    text/value conversion through the TypeConverter architecture.
-    Classes that don't support this are serialized and stored with the
-    mimetype set.
-
-    The mimetype is used for serialized objects, and tells the
-    ResXResourceReader how to depersist the object. This is currently not
-    extensible. For a given mimetype the value must be set accordingly:
-
-    Note - application/x-microsoft.net.object.binary.base64 is the format
-    that the ResXResourceWriter will generate, however the reader can
-    read any of the formats listed below.
-
-    mimetype: application/x-microsoft.net.object.binary.base64
-    value   : The object must be serialized with
-            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
-            : and then encoded with base64 encoding.
-
-    mimetype: application/x-microsoft.net.object.soap.base64
-    value   : The object must be serialized with
-            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
-            : and then encoded with base64 encoding.
-
-    mimetype: application/x-microsoft.net.object.bytearray.base64
-    value   : The object must be serialized into a byte array
-            : using a System.ComponentModel.TypeConverter
-            : and then encoded with base64 encoding.
-    -->
-  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
-    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
-    <xsd:element name="root" msdata:IsDataSet="true">
-      <xsd:complexType>
-        <xsd:choice maxOccurs="unbounded">
-          <xsd:element name="metadata">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" />
-              </xsd:sequence>
-              <xsd:attribute name="name" use="required" type="xsd:string" />
-              <xsd:attribute name="type" type="xsd:string" />
-              <xsd:attribute name="mimetype" type="xsd:string" />
-              <xsd:attribute ref="xml:space" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="assembly">
-            <xsd:complexType>
-              <xsd:attribute name="alias" type="xsd:string" />
-              <xsd:attribute name="name" type="xsd:string" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="data">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
-                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
-              </xsd:sequence>
-              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
-              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
-              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
-              <xsd:attribute ref="xml:space" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="resheader">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
-              </xsd:sequence>
-              <xsd:attribute name="name" type="xsd:string" use="required" />
-            </xsd:complexType>
-          </xsd:element>
-        </xsd:choice>
-      </xsd:complexType>
-    </xsd:element>
-  </xsd:schema>
-  <resheader name="resmimetype">
-    <value>text/microsoft-resx</value>
-  </resheader>
-  <resheader name="version">
-    <value>2.0</value>
-  </resheader>
-  <resheader name="reader">
-    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
-  </resheader>
-  <resheader name="writer">
-    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
-  </resheader>
-  <data name="String1" xml:space="preserve">
-    <value />
-    <comment>test</comment>
-  </data>
-</root>
\ No newline at end of file
index 5022260..f1c2a5c 100755 (executable)
@@ -9,10 +9,14 @@
   <!-- Property Group for Tizen Project -->
   <PropertyGroup>
     <TizenCreateTpkOnBuild>true</TizenCreateTpkOnBuild>
+    <AssemblyName>Tizen.NUI.Devel.Tests</AssemblyName>
+    <SignAssembly>true</SignAssembly>
+    <AssemblyOriginatorKeyFile>NuiSample.snk</AssemblyOriginatorKeyFile>
   </PropertyGroup>
 
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
     <DebugType>portable</DebugType>
+    <DefineConstants>TRACE;DEBUG;EXAMPLE_OFF</DefineConstants>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
     <DebugType>None</DebugType>
@@ -35,8 +39,5 @@
     <ProjectReference Include="..\nunit.framework\nunit.framework.csproj" />
     <ProjectReference Include="..\nunitlite\nunitlite.csproj" />
   </ItemGroup>
-  <Target Name="PostBuild" AfterTargets="PostBuildEvent">
-    <Exec Command="sdb root on&#xD;&#xA;sdb shell &quot;mount -o remount,rw /&quot;&#xD;&#xA;sdb shell &quot;rm /usr/share/dotnet.tizen/framework/*.ni.dll&quot;&#xD;&#xA;sdb push $(TargetDir)Tizen.NUI.dll $(TargetDir)Tizen.NUI.pdb /usr/share/dotnet.tizen/framework/&#xD;&#xA;sdb shell &quot;chsmack -a '_' /usr/share/dotnet.tizen/framework/Tizen.NUI.dll&quot;&#xD;&#xA;sdb shell &quot;chsmack -a '_' /usr/share/dotnet.tizen/framework/Tizen.NUI.pdb&quot;&#xD;&#xA;sdb push $(TargetDir)Tizen.NUI.Components.dll $(TargetDir)Tizen.NUI.Components.pdb /usr/share/dotnet.tizen/framework/&#xD;&#xA;sdb shell &quot;chsmack -a '_' /usr/share/dotnet.tizen/framework/Tizen.NUI.Components.dll&quot;&#xD;&#xA;sdb shell &quot;chsmack -a '_' /usr/share/dotnet.tizen/framework/Tizen.NUI.Components.pdb&quot;&#xD;&#xA;sdb shell sync&#xD;&#xA;" />
-  </Target>
 
 </Project>
@@ -1,6 +1,3 @@
-#define EXAMPLE
-#undef EXAMPLE
-
 using NUnit.Framework;
 using NUnit.Framework.TUnit;
 using System;
@@ -29,7 +26,9 @@ namespace Tizen.NUI.Devel.Tests
             Tizen.Log.Info(TAG, "Destroy() is called!");
         }
 
+#if (EXAMPLE)
         [Test]
+#endif
         [Category("P1")]
         [Description("Test Button empty constructor. Check it has been triggered")]
         [Property("SPEC", "Tizen.NUI.Components.Button.Button C")]
@@ -45,7 +44,9 @@ namespace Tizen.NUI.Devel.Tests
             Assert.IsInstanceOf<Components.Button>(button, "Should be an instance of Button!");
         }
 
-        //[Test]
+#if (EXAMPLE)
+        [Test]
+#endif
         [Category("P2")]
         [Description("Check exception when constructing a Button with nonexistent style.")]
         [Property("SPEC", "Tizen.NUI.Components.Button.Button C")]
@@ -67,7 +68,9 @@ namespace Tizen.NUI.Devel.Tests
             }
         }
 
-        //[Test]
+#if (EXAMPLE)
+        [Test]
+#endif
         [Category("P1")]
         [Description("Test Button constructor using style. Check it has been triggered")]
         [Property("SPEC", "Tizen.NUI.Components.Button.Button C")]
@@ -24,7 +24,9 @@ namespace Tizen.NUI.Devel.Tests
         {
         }
 
+#if (EXAMPLE)
         [Test]
+#endif
         [Category("P1")]
         [Description("LottieAnimationView constructor test")]
         [Property("SPEC", "Tizen.NUI.BaseComponents.LottieAnimationView.LottieAnimationView C")]
@@ -52,7 +54,9 @@ namespace Tizen.NUI.Devel.Tests
             lottie3.Dispose();
         }
 
+#if (EXAMPLE)
         [Test]
+#endif
         [Category("P1")]
         [Description("URL test")]
         [Property("SPEC", "Tizen.NUI.BaseComponents.LottieAnimationView.URL A")]
@@ -75,7 +79,9 @@ namespace Tizen.NUI.Devel.Tests
             await Task.Delay(500);
         }
 
+#if (EXAMPLE)
         [Test]
+#endif
         [Category("P1")]
         [Description("PlayState test")]
         [Property("SPEC", "Tizen.NUI.BaseComponents.LottieAnimationView.PlayState A")]
@@ -121,7 +127,9 @@ namespace Tizen.NUI.Devel.Tests
             await Task.Delay(500);
         }
 
+#if (EXAMPLE)
         [Test]
+#endif
         [Category("P1")]
         [Description("TotalFrame test")]
         [Property("SPEC", "Tizen.NUI.BaseComponents.LottieAnimationView.TotalFrame A")]
@@ -154,7 +162,9 @@ namespace Tizen.NUI.Devel.Tests
             await Task.Delay(500);
         }
 
+#if (EXAMPLE)
         [Test]
+#endif
         [Category("P1")]
         [Description("CurrentFrame test")]
         [Property("SPEC", "Tizen.NUI.BaseComponents.LottieAnimationView.CurrentFrame A")]
@@ -183,7 +193,9 @@ namespace Tizen.NUI.Devel.Tests
 
         }
 
+#if (EXAMPLE)
         [Test]
+#endif
         [Category("P1")]
         [Description("LoopingMode test")]
         [Property("SPEC", "Tizen.NUI.BaseComponents.LottieAnimationView.LoopingMode A")]
@@ -219,7 +231,9 @@ namespace Tizen.NUI.Devel.Tests
             await Task.Delay(500);
         }
 
+#if (EXAMPLE)
         [Test]
+#endif
         [Category("P1")]
         [Description("LoopCount test")]
         [Property("SPEC", "Tizen.NUI.BaseComponents.LottieAnimationView.LoopCount A")]
@@ -253,7 +267,9 @@ namespace Tizen.NUI.Devel.Tests
             await Task.Delay(500);
         }
 
+#if (EXAMPLE)
         [Test]
+#endif
         [Category("P1")]
         [Description("StopBehavior test")]
         [Property("SPEC", "Tizen.NUI.BaseComponents.LottieAnimationView.StopBehavior A")]
@@ -294,7 +310,9 @@ namespace Tizen.NUI.Devel.Tests
             await Task.Delay(500);
         }
 
+#if (EXAMPLE)
         [Test]
+#endif
         [Category("P1")]
         [Description("RedrawInScalingDown test")]
         [Property("SPEC", "Tizen.NUI.BaseComponents.LottieAnimationView.RedrawInScalingDown A")]
@@ -331,7 +349,9 @@ namespace Tizen.NUI.Devel.Tests
             await Task.Delay(500);
         }
 
+#if (EXAMPLE)
         [Test]
+#endif
         [Category("P1")]
         [Description("SetMinMaxFrame test")]
         [Property("SPEC", "Tizen.NUI.BaseComponents.LottieAnimationView.SetMinMaxFrame M")]
@@ -385,7 +405,9 @@ namespace Tizen.NUI.Devel.Tests
             await Task.Delay(500);
         }
 
+#if (EXAMPLE)
         [Test]
+#endif
         [Category("P1")]
         [Description("Play test")]
         [Property("SPEC", "Tizen.NUI.BaseComponents.LottieAnimationView.Play M")]
@@ -418,7 +440,9 @@ namespace Tizen.NUI.Devel.Tests
             await Task.Delay(500);
         }
 
+#if (EXAMPLE)
         [Test]
+#endif
         [Category("P1")]
         [Description("Pause test")]
         [Property("SPEC", "Tizen.NUI.BaseComponents.LottieAnimationView.Pause M")]
@@ -454,7 +478,9 @@ namespace Tizen.NUI.Devel.Tests
             await Task.Delay(500);
         }
 
+#if (EXAMPLE)
         [Test]
+#endif
         [Category("P1")]
         [Description("Stop test")]
         [Property("SPEC", "Tizen.NUI.BaseComponents.LottieAnimationView.Stop M")]
@@ -488,7 +514,9 @@ namespace Tizen.NUI.Devel.Tests
             await Task.Delay(500);
         }
 
+#if (EXAMPLE)
         [Test]
+#endif
         [Category("P1")]
         [Description("GetContentInfo test")]
         [Property("SPEC", "Tizen.NUI.BaseComponents.LottieAnimationView.GetContentInfo M")]
@@ -526,7 +554,9 @@ namespace Tizen.NUI.Devel.Tests
             await Task.Delay(500);
         }
 
+#if (EXAMPLE)
         [Test]
+#endif
         [Category("P1")]
         [Description("Finished test")]
         [Property("SPEC", "Tizen.NUI.BaseComponents.LottieAnimationView.Finished E")]
@@ -582,7 +612,9 @@ namespace Tizen.NUI.Devel.Tests
             finishedCheck = true;
         }
 
+#if (EXAMPLE)
         [Test]
+#endif
         [Category("P1")]
         [Description("RedrawInScalingDown animation test")]
         [Property("SPEC", "Tizen.NUI.BaseComponents.LottieAnimationView.RedrawInScalingDown A")]
@@ -24,7 +24,9 @@ namespace Tizen.NUI.Devel.Tests
         {
         }
 
+#if (EXAMPLE)
         [Test]
+#endif
         [Category("P1")]
         [Description("view memory leak test")]
         [Property("SPEC", "local test")]
diff --git a/test/Tizen.NUI.Tests/Tizen.NUI.TCT/testcase/internal/Accessibility/TSAccessibilityActionSignal.cs b/test/Tizen.NUI.Tests/Tizen.NUI.TCT/testcase/internal/Accessibility/TSAccessibilityActionSignal.cs
new file mode 100755 (executable)
index 0000000..53e7845
--- /dev/null
@@ -0,0 +1,147 @@
+
+using global::System;
+using NUnit.Framework;
+using NUnit.Framework.TUnit;
+using Tizen.NUI.Components;
+using Tizen.NUI.BaseComponents;
+
+namespace Tizen.NUI.Devel.Tests
+{
+    using tlog = Tizen.Log;
+
+    [TestFixture]
+    [Description("internal/Accessibility/AccessibilityActionSignal")]
+    public class InternalAccessibilityActionSignalTest
+    {
+        private const string tag = "NUITEST";
+        private delegate bool dummyCallback(IntPtr accessibilityManager);
+        private bool OnDummyCallback(IntPtr data)
+        {
+            return false;
+        }
+
+        [SetUp]
+        public void Init()
+        {
+            tlog.Info(tag, "Init() is called!");
+        }
+
+        [TearDown]
+        public void Destroy()
+        {
+            tlog.Info(tag, "Destroy() is called!");
+        }
+
+        [Test]
+        [Description("AccessibilityActionSignal constructor")]
+        [Property("AUTHOR", "dongsug.song@samsung.com")]
+        public void AccessibilityActionSignalConstructor()
+        {
+            tlog.Debug(tag, $"AccessibilityActionSignalConstructor START");
+
+            var testingTarget = new AccessibilityActionSignal();
+
+            Assert.IsNotNull(testingTarget, "should be not null");
+            Assert.IsInstanceOf<AccessibilityActionSignal>(testingTarget, "should be an instance of testing target class!");
+
+            testingTarget.Dispose();
+            tlog.Debug(tag, $"AccessibilityActionSignalConstructor END (OK)");
+        }
+
+        [Test]
+        [Description("AccessibilityActionSignal Empty")]
+        [Property("AUTHOR", "dongsug.song@samsung.com")]
+        public void AccessibilityActionSignalEmpty()
+        {
+            tlog.Debug(tag, $"AccessibilityActionSignalEmpty START");
+
+            var testingTarget = new AccessibilityActionSignal();
+            Assert.IsNotNull(testingTarget, "should be not null");
+            Assert.IsInstanceOf<AccessibilityActionSignal>(testingTarget, "should be an instance of testing target class!");
+
+            var result = testingTarget.Empty();
+            Assert.IsTrue(result);
+
+            testingTarget.Dispose();
+            tlog.Debug(tag, $"AccessibilityActionSignalEmpty END (OK)");
+        }
+
+        [Test]
+        [Description("AccessibilityActionSignal GetConnectionCount")]
+        [Property("AUTHOR", "dongsug.song@samsung.com")]
+        public void AccessibilityActionSignalGetConnectionCount()
+        {
+            tlog.Debug(tag, $"AccessibilityActionSignal_GetConnectionCount START");
+
+            var testingTarget = new AccessibilityActionSignal();
+            Assert.IsNotNull(testingTarget, "should be not null");
+            Assert.IsInstanceOf<AccessibilityActionSignal>(testingTarget, "should be an instance of testing target class!");
+
+            var result = testingTarget.GetConnectionCount();
+            Assert.IsTrue(result == 0, "result should be 0");
+
+            testingTarget.Dispose();
+            tlog.Debug(tag, $"AccessibilityActionSignalGetConnectionCount END (OK)");
+        }
+
+        [Test]
+        [Description("AccessibilityActionSignal Connection")]
+        [Property("AUTHOR", "dongsug.song@samsung.com")]
+        public void AccessibilityActionSignalConnection()
+        {
+            tlog.Debug(tag, $"AccessibilityActionSignalConnection START");
+
+            var testingTarget = new AccessibilityActionSignal();
+            Assert.IsNotNull(testingTarget, "should be not null");
+            Assert.IsInstanceOf<AccessibilityActionSignal>(testingTarget, "should be an instance of testing target class!");
+
+            dummyCallback callback = OnDummyCallback;
+            testingTarget.Connect(callback);
+            testingTarget.Disconnect(callback);
+            testingTarget.Dispose();
+
+            tlog.Debug(tag, $"AccessibilityActionSignalConnection END (OK)");
+        }
+
+        [Test]
+        [Description("AccessibilityActionSignal Disconnection")]
+        [Property("AUTHOR", "dongsug.song@samsung.com")]
+        public void AccessibilityActionSignalDisconnection()
+        {
+            tlog.Debug(tag, $"AccessibilityActionSignalDisconnection START");
+
+            var testingTarget = new AccessibilityActionSignal();
+            Assert.IsNotNull(testingTarget, "should be not null");
+            Assert.IsInstanceOf<AccessibilityActionSignal>(testingTarget, "should be an instance of testing target class!");
+
+            dummyCallback callback = OnDummyCallback;
+            testingTarget.Connect(callback);
+            testingTarget.Disconnect(callback);
+            testingTarget.Dispose();
+
+            tlog.Debug(tag, $"AccessibilityActionSignalDisconnection END (OK)");
+        }
+
+        [Test]
+        [Description("AccessibilityActionSignal Emit")]
+        [Property("AUTHOR", "dongsug.song@samsung.com")]
+        public void AccessibilityActionSignalEmit()
+        {
+            tlog.Debug(tag, $"AccessibilityActionSignalEmit START");
+            var currentPid = global::System.Diagnostics.Process.GetCurrentProcess().Id;
+            var currentTid = global::System.Threading.Thread.CurrentThread.ManagedThreadId;
+
+            tlog.Debug(tag, $"thread check! main pid={App.mainPid}, current pid={currentPid}, main tid={App.mainTid}, current tid={currentTid}");
+
+            var testingTarget = new AccessibilityActionSignal();
+            Assert.IsNotNull(testingTarget, "should be not null");
+            Assert.IsInstanceOf<AccessibilityActionSignal>(testingTarget, "should be an instance of testing target class!");
+
+            testingTarget.Emit(Tizen.NUI.Accessibility.AccessibilityManager.Instance);
+            testingTarget.Dispose();
+
+            tlog.Debug(tag, $"AccessibilityActionSignalEmit END (OK)");
+        }
+
+    }
+}
diff --git a/test/Tizen.NUI.Tests/Tizen.NUI.TCT/testcase/internal/Accessibility/TSAccessibilityFocusOvershotSignal.cs b/test/Tizen.NUI.Tests/Tizen.NUI.TCT/testcase/internal/Accessibility/TSAccessibilityFocusOvershotSignal.cs
new file mode 100755 (executable)
index 0000000..98afa2b
--- /dev/null
@@ -0,0 +1,150 @@
+
+using global::System;
+using NUnit.Framework;
+using NUnit.Framework.TUnit;
+using Tizen.NUI.Components;
+using Tizen.NUI.BaseComponents;
+
+namespace Tizen.NUI.Devel.Tests
+{
+    using tlog = Tizen.Log;
+
+    [TestFixture]
+    [Description("internal/Accessibility/AccessibilityFocusOvershotSignal")]
+    public class InternalAccessibilityFocusOvershotSignalTests
+    {
+        private const string tag = "NUITEST";
+        private delegate bool dummyCallback(IntPtr accessibilityManager);
+        private bool OnDummyCallback(IntPtr data)
+        {
+            return false;
+        }
+
+        [SetUp]
+        public void Init()
+        {
+            tlog.Info(tag, "Init() is called!");
+        }
+
+        [TearDown]
+        public void Destroy()
+        {
+            tlog.Info(tag, "Destroy() is called!");
+        }
+
+        [Test]
+        [Description("AccessibilityFocusOvershotSignal constructor")]
+        [Property("AUTHOR", "dongsug.song@samsung.com")]
+        public void AccessibilityFocusOvershotSignalConstructor()
+        {
+            tlog.Debug(tag, $"AccessibilityFocusOvershotSignalConstructor START");
+
+            var testingTarget = new AccessibilityFocusOvershotSignal();
+
+            Assert.IsNotNull(testingTarget, "should be not null");
+            Assert.IsInstanceOf<AccessibilityFocusOvershotSignal>(testingTarget, "should be an instance of testing target class!");
+
+            testingTarget.Dispose();
+            tlog.Debug(tag, $"AccessibilityFocusOvershotSignalConstructor END (OK)");
+        }
+
+        [Test]
+        [Description("AccessibilityFocusOvershotSignal Empty")]
+        [Property("AUTHOR", "dongsug.song@samsung.com")]
+        public void AccessibilityFocusOvershotSignalEmpty()
+        {
+            tlog.Debug(tag, $"AccessibilityFocusOvershotSignalEmpty START");
+
+            var testingTarget = new AccessibilityFocusOvershotSignal();
+            Assert.IsNotNull(testingTarget, "should be not null");
+            Assert.IsInstanceOf<AccessibilityFocusOvershotSignal>(testingTarget, "should be an instance of testing target class!");
+
+            var result = testingTarget.Empty();
+            Assert.IsTrue(result);
+
+            testingTarget.Dispose();
+            tlog.Debug(tag, $"AccessibilityFocusOvershotSignalEmpty END (OK)");
+        }
+
+        [Test]
+        [Description("AccessibilityFocusOvershotSignal GetConnectionCount")]
+        [Property("AUTHOR", "dongsug.song@samsung.com")]
+        public void AccessibilityFocusOvershotSignalGetConnectionCount()
+        {
+            tlog.Debug(tag, $"AccessibilityFocusOvershotSignalGetConnectionCount START");
+
+            var testingTarget = new AccessibilityFocusOvershotSignal();
+            Assert.IsNotNull(testingTarget, "should be not null");
+            Assert.IsInstanceOf<AccessibilityFocusOvershotSignal>(testingTarget, "should be an instance of testing target class!");
+
+            var result = testingTarget.GetConnectionCount();
+            Assert.IsTrue(result == 0, "result should be 0");
+
+            testingTarget.Dispose();
+            tlog.Debug(tag, $"AccessibilityFocusOvershotSignalGetConnectionCount END (OK)");
+        }
+
+        [Test]
+        [Description("AccessibilityFocusOvershotSignal Connection")]
+        [Property("AUTHOR", "dongsug.song@samsung.com")]
+        public void AccessibilityFocusOvershotSignalConnection()
+        {
+            tlog.Debug(tag, $"AccessibilityFocusOvershotSignalConnection START");
+
+            var testingTarget = new AccessibilityFocusOvershotSignal();
+            Assert.IsNotNull(testingTarget, "should be not null");
+            Assert.IsInstanceOf<AccessibilityFocusOvershotSignal>(testingTarget, "should be an instance of testing target class!");
+
+            dummyCallback callback = OnDummyCallback;
+            testingTarget.Connect(callback);
+            testingTarget.Disconnect(callback);
+            testingTarget.Dispose();
+
+            tlog.Debug(tag, $"AccessibilityFocusOvershotSignalConnection END (OK)");
+        }
+
+        [Test]
+        [Description("AccessibilityFocusOvershotSignal Disconnection")]
+        [Property("AUTHOR", "dongsug.song@samsung.com")]
+        public void AccessibilityFocusOvershotSignalDisconnection()
+        {
+            tlog.Debug(tag, $"AccessibilityFocusOvershotSignalDisconnection START");
+
+            var testingTarget = new AccessibilityFocusOvershotSignal();
+            Assert.IsNotNull(testingTarget, "should be not null");
+            Assert.IsInstanceOf<AccessibilityFocusOvershotSignal>(testingTarget, "should be an instance of testing target class!");
+
+            dummyCallback callback = OnDummyCallback;
+            testingTarget.Connect(callback);
+            testingTarget.Disconnect(callback);
+            testingTarget.Dispose();
+
+            tlog.Debug(tag, $"AccessibilityFocusOvershotSignalDisconnection END (OK)");
+        }
+
+        [Test]
+        [Description("AccessibilityFocusOvershotSignal Emit")]
+        [Property("AUTHOR", "dongsug.song@samsung.com")]
+        public void AccessibilityFocusOvershotSignalEmit()
+        {
+            tlog.Debug(tag, $"AccessibilityFocusOvershotSignalEmit START");
+            var currentPid = global::System.Diagnostics.Process.GetCurrentProcess().Id;
+            var currentTid = global::System.Threading.Thread.CurrentThread.ManagedThreadId;
+
+            tlog.Debug(tag, $"thread check! main pid={App.mainPid}, current pid={currentPid}, main tid={App.mainTid}, current tid={currentTid}");
+
+            var testingTarget = new AccessibilityFocusOvershotSignal();
+            Assert.IsNotNull(testingTarget, "should be not null");
+            Assert.IsInstanceOf<AccessibilityFocusOvershotSignal>(testingTarget, "should be an instance of testing target class!");
+
+            View dummy = new View();
+            testingTarget.Emit(dummy, Accessibility.AccessibilityManager.FocusOvershotDirection.Previous);
+            
+            testingTarget.Dispose();
+            dummy.Dispose();
+
+            tlog.Debug(tag, $"AccessibilityFocusOvershotSignalEmit END (OK)");
+        }
+
+    }
+}
index 086f74e..8d32572 100755 (executable)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<manifest package="Tizen.NUI.Devel.Tests" version="1.0.0" api-version="8" xmlns="http://tizen.org/ns/packages">
+<manifest package="Tizen.NUI.Devel.Tests" version="1.0.0" api-version="9" xmlns="http://tizen.org/ns/packages">
     <profile name="common" />
     <ui-application appid="Tizen.NUI.Devel.Tests" exec="Tizen.NUI.Devel.Tests.dll" multiple="false" taskmanage="true" splash-screen-display="true" type="dotnet" launch_mode="single">
         <icon>nui-csharp.png</icon>