[NUI][Non-ACR] Fix IMF/InputMethod TCT issue 95/212895/1
authorhuiyu.eun <huiyu.eun@samsung.com>
Wed, 28 Aug 2019 03:45:43 +0000 (12:45 +0900)
committerhuiyu.eun <huiyu.eun@samsung.com>
Wed, 28 Aug 2019 04:06:47 +0000 (13:06 +0900)
The IMF(InputMethod) is implemented by a third party,
 and there are some IMFs that do not set the value of InputPanelLocale and Changed callback.
The three TCTs below do not support behavior in the IMF of GBM Binaries.
If the InputPanelLocale value is set the "", then the IMF does not support this feature(TCT).
 - Tizen.NUI.Tests.InputMethodContextTests.LanguageChanged_EVENT
 - Tizen.NUI.Tests.InputMethodContextTests.GetInputPanelLocale
 - Tizen.NUI.Tests.ImfManagerTests.LanguageChanged_CHECK_EVENT

Change-Id: Icb6a93807f8a36698745138e67a34601e1e6d1d1
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
tct-suite-vs/Tizen.NUI.Tests/testcase/TSImfManager.cs
tct-suite-vs/Tizen.NUI.Tests/testcase/TSInputMethodContext.cs

index 60e2468..86d2b75 100755 (executable)
@@ -637,30 +637,42 @@ namespace Tizen.NUI.Tests
         {
             /* TEST CODE */
             var manager = ImfManager.Get();
-            Assert.IsInstanceOf<ImfManager>(manager, "Should be an instance of ImfManager type.");
-            try
-            {
-                _flagOnLanguageChangedEvent = false;
-                Assert.False(_flagOnLanguageChangedEvent, "_flagOnLanguageChangedEvent should false initial");
-                manager.LanguageChanged += OnLanguageChangedEvent;
-                manager.Deactivate();
-                manager.HideInputPanel();
-                await Task.Delay(500);
-                manager.Activate();
-                manager.ShowInputPanel();
-                await Task.Delay(500);
-                Tizen.Log.Fatal("NUI", "LanguageChanged_CHECK_EVENT()!!!");
-                Assert.True(_flagOnLanguageChangedEvent, "Should be true after triger LanguageChanged event.");
-            }
-            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
-            {
-                manager.LanguageChanged -= OnLanguageChangedEvent;
+            Assert.IsInstanceOf<ImfManager>(manager, "Should be an instance of ImfManager type.");\r
+\r
+            if (manager.GetInputPanelLocale() != null)\r
+            {\r
+                if (manager.GetInputPanelLocale() == "")\r
+                {\r
+                    Assert.Pass("InputPanelLocale of ImfManager is not set in this profile");\r
+                }\r
+                else\r
+                {\r
+                    try\r
+                    {\r
+                        _flagOnLanguageChangedEvent = false;\r
+                        Assert.False(_flagOnLanguageChangedEvent, "_flagOnLanguageChangedEvent should false initial");\r
+                        manager.LanguageChanged += OnLanguageChangedEvent;\r
+                        manager.Deactivate();\r
+                        manager.HideInputPanel();\r
+                        await Task.Delay(500);\r
+                        manager.Activate();\r
+                        manager.ShowInputPanel();\r
+                        await Task.Delay(500);\r
+                        Tizen.Log.Fatal("NUI", "LanguageChanged_CHECK_EVENT()!!!");\r
+                        Assert.True(_flagOnLanguageChangedEvent, "Should be true after triger LanguageChanged event.");\r
+\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
+                        manager.LanguageChanged -= OnLanguageChangedEvent;\r
+                    }\r
+                }\r
             }
         }
 
index 2b649df..913a184 100755 (executable)
@@ -598,7 +598,17 @@ namespace Tizen.NUI.Tests
             await Task.Delay(500);
             if (inputMethodContext)
             {
-                Assert.IsTrue(inputMethodContext.GetInputPanelLocale().Contains("en_US"), "Default value is not en_US");
+                if(inputMethodContext.GetInputPanelLocale() != null)\r
+                {\r
+                    if (inputMethodContext.GetInputPanelLocale() != "")\r
+                    {\r
+                        Assert.IsTrue(inputMethodContext.GetInputPanelLocale().Contains("en_US"), "Default value is not en_US");\r
+                    }\r
+                    else\r
+                    {\r
+                        Assert.Pass("InputPanelLocale of InputMethod is not set in this profile");\r
+                    }\r
+                }
             }
 
             inputMethodContext.Dispose();
@@ -755,21 +765,32 @@ namespace Tizen.NUI.Tests
             };
             Window.Instance.GetDefaultLayer().Add(_editor);
             InputMethodContext inputMethodContext = _editor.GetInputMethodContext();
-            if (inputMethodContext)
-            {
-                _temp = 0;
-                inputMethodContext.LanguageChanged += OnInputMethodContextEvent1;
-                inputMethodContext.Deactivate();
-                inputMethodContext.HideInputPanel();
-                await Task.Delay(500);
-                Tizen.Log.Debug("NUI", $"TP#1 LanguageChanged_EVENT() HideInputPanel() TimeStamp={DateTime.Now.ToString("hh:mm:ss.fff")}");
-                inputMethodContext.Activate();
-                inputMethodContext.ShowInputPanel();
-                await Task.Delay(500);
-                Tizen.Log.Debug("NUI", $"TP#2 LanguageChanged_EVENT() ShowInputPanel() TimeStamp={DateTime.Now.ToString("hh:mm:ss.fff")}");
 
-                Assert.AreEqual(10, _temp, "Should be 10");
-                inputMethodContext.LanguageChanged -= OnInputMethodContextEvent1;
+            if (inputMethodContext)
+            {\r
+                if (inputMethodContext.GetInputPanelLocale() != null)\r
+                {\r
+                    if (inputMethodContext.GetInputPanelLocale() == "")\r
+                    {\r
+                        Assert.Pass("InputPanelLocale of InputMethod is not set in this profile");\r
+                    }\r
+                    else\r
+                    {\r
+                        _temp = 0;\r
+                        inputMethodContext.LanguageChanged += OnInputMethodContextEvent1;\r
+                        inputMethodContext.Deactivate();\r
+                        inputMethodContext.HideInputPanel();\r
+                        await Task.Delay(500);\r
+                        Tizen.Log.Debug("NUI", $"TP#1 LanguageChanged_EVENT() HideInputPanel() TimeStamp={DateTime.Now.ToString("hh:mm:ss.fff")}");\r
+                        inputMethodContext.Activate();\r
+                        inputMethodContext.ShowInputPanel();\r
+                        await Task.Delay(500);\r
+                        Tizen.Log.Debug("NUI", $"TP#2 LanguageChanged_EVENT() ShowInputPanel() TimeStamp={DateTime.Now.ToString("hh:mm:ss.fff")}");\r
+\r
+                        Assert.AreEqual(10, _temp, "Should be 10");\r
+                        inputMethodContext.LanguageChanged -= OnInputMethodContextEvent1;\r
+                    }\r
+                }
             }
 
             Window.Instance.GetDefaultLayer().Remove(_editor);