[NUI] Update webview TCs.
[platform/core/csapi/tizenfx.git] / test / Tizen.NUI.Tests / Tizen.NUI.Devel.Tests / testcase / internal / WebView / TSWebSettings.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 using System.Threading.Tasks;
7
8 namespace Tizen.NUI.Devel.Tests
9 {
10     using tlog = Tizen.Log;
11
12     [TestFixture]
13     [Description("internal/WebView/WebSettings")]
14     public class InternalWebSettingsTest
15     {
16         private const string tag = "NUITEST";
17         private string url = $"file://{Tizen.Applications.Application.Current.DirectoryInfo.Resource}webview/index.html";
18
19         private BaseComponents.WebView webview = null;
20
21         [SetUp]
22         public void Init()
23         {
24             tlog.Info(tag, "Init() is called!");
25             webview = new BaseComponents.WebView()
26             {
27                 Size = new Size(500, 200),
28             };
29         }
30
31         [TearDown]
32         public void Destroy()
33         {
34             tlog.Info(tag, "Destroy() is being called!");
35             webview.Dispose();
36             tlog.Info(tag, "Destroy() is called!");
37         }
38
39         [Test]
40         [Category("P1")]
41         [Description("WebSettings MixedContentsAllowed.")]
42         [Property("SPEC", "Tizen.NUI.WebSettings.MixedContentsAllowed A")]
43         [Property("SPEC_URL", "-")]
44         [Property("CRITERIA", "PRW")]
45         [Property("COVPARAM", "")]
46         [Property("AUTHOR", "guowei.wang@samsung.com")]
47         public async Task WebSettingsMixedContentsAllowed()
48         {
49             tlog.Debug(tag, $"WebSettingsMixedContentsAllowed START");
50
51             TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
52             EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
53             {
54                 tcs.TrySetResult(true);
55             };
56             webview.PageLoadFinished += onLoadFinished;
57
58             webview.LoadUrl(url);
59             var result = await tcs.Task;
60             Assert.IsTrue(result, "PageLoadFinished event should be invoked");
61
62             // Make current thread (CPU) sleep...
63             await Task.Delay(1);
64
65             webview.PageLoadFinished -= onLoadFinished;
66
67             var webSettings = webview.Settings;
68             tlog.Debug(tag, "MixedContentsAllowed : " + webSettings.MixedContentsAllowed);
69
70             webSettings.MixedContentsAllowed = true;
71             Assert.AreEqual(true, webSettings.MixedContentsAllowed, "Should be equal!");
72
73             webSettings.MixedContentsAllowed = false;
74             Assert.AreEqual(false, webSettings.MixedContentsAllowed, "Should be equal!");
75
76             webSettings.Dispose();
77             tlog.Debug(tag, $"WebSettingsMixedContentsAllowed END (OK)");
78         }
79
80         [Test]
81         [Category("P1")]
82         [Description("WebSettings SpatialNavigationEnabled.")]
83         [Property("SPEC", "Tizen.NUI.WebSettings.SpatialNavigationEnabled A")]
84         [Property("SPEC_URL", "-")]
85         [Property("CRITERIA", "PRW")]
86         [Property("COVPARAM", "")]
87         [Property("AUTHOR", "guowei.wang@samsung.com")]
88         public async Task WebSettingsSpatialNavigationEnabled()
89         {
90             tlog.Debug(tag, $"WebSettingsSpatialNavigationEnabled START");
91
92             TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
93             EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
94             {
95                 tcs.TrySetResult(true);
96             };
97             webview.PageLoadFinished += onLoadFinished;
98
99             webview.LoadUrl(url);
100             var result = await tcs.Task;
101             Assert.IsTrue(result, "PageLoadFinished event should be invoked");
102
103             // Make current thread (CPU) sleep...
104             await Task.Delay(1);
105
106             webview.PageLoadFinished -= onLoadFinished;
107
108             var webSettings = webview.Settings;
109             tlog.Debug(tag, "SpatialNavigationEnabled : " + webSettings.SpatialNavigationEnabled);
110
111             webSettings.SpatialNavigationEnabled = true;
112             Assert.AreEqual(true, webSettings.SpatialNavigationEnabled, "Should be equal!");
113
114             webSettings.SpatialNavigationEnabled = false;
115             Assert.AreEqual(false, webSettings.SpatialNavigationEnabled, "Should be equal!");
116
117             webSettings.Dispose();
118             tlog.Debug(tag, $"WebSettingsSpatialNavigationEnabled END (OK)");
119         }
120
121         [Test]
122         [Category("P1")]
123         [Description("WebSettings WebSecurityEnabled.")]
124         [Property("SPEC", "Tizen.NUI.WebSettings.WebSecurityEnabled A")]
125         [Property("SPEC_URL", "-")]
126         [Property("CRITERIA", "PRW")]
127         [Property("COVPARAM", "")]
128         [Property("AUTHOR", "guowei.wang@samsung.com")]
129         public async Task WebSettingsWebSecurityEnabled()
130         {
131             tlog.Debug(tag, $"WebSettingsWebSecurityEnabled START");
132
133             TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
134             EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
135             {
136                 tcs.TrySetResult(true);
137             };
138             webview.PageLoadFinished += onLoadFinished;
139
140             webview.LoadUrl(url);
141             var result = await tcs.Task;
142             Assert.IsTrue(result, "PageLoadFinished event should be invoked");
143
144             // Make current thread (CPU) sleep...
145             await Task.Delay(1);
146
147             webview.PageLoadFinished -= onLoadFinished;
148
149             var webSettings = webview.Settings;
150             tlog.Debug(tag, "WebSecurityEnabled : " + webSettings.WebSecurityEnabled);
151
152             webSettings.WebSecurityEnabled = true;
153             Assert.AreEqual(true, webSettings.WebSecurityEnabled, "Should be equal!");
154
155             webSettings.WebSecurityEnabled = false;
156             Assert.AreEqual(false, webSettings.WebSecurityEnabled, "Should be equal!");
157
158             webSettings.Dispose();
159             tlog.Debug(tag, $"WebSettingsWebSecurityEnabled END (OK)");
160         }
161
162         [Test]
163         [Category("P1")]
164         [Description("WebSettings CacheBuilderEnabled.")]
165         [Property("SPEC", "Tizen.NUI.WebSettings.CacheBuilderEnabled A")]
166         [Property("SPEC_URL", "-")]
167         [Property("CRITERIA", "PRW")]
168         [Property("COVPARAM", "")]
169         [Property("AUTHOR", "guowei.wang@samsung.com")]
170         public async Task WebSettingsCacheBuilderEnabled()
171         {
172             tlog.Debug(tag, $"WebSettingsCacheBuilderEnabled START");
173
174             TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
175             EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
176             {
177                 tcs.TrySetResult(true);
178             };
179             webview.PageLoadFinished += onLoadFinished;
180
181             webview.LoadUrl(url);
182             var result = await tcs.Task;
183             Assert.IsTrue(result, "PageLoadFinished event should be invoked");
184
185             // Make current thread (CPU) sleep...
186             await Task.Delay(1);
187
188             webview.PageLoadFinished -= onLoadFinished;
189
190             var webSettings = webview.Settings;
191             tlog.Debug(tag, "CacheBuilderEnabled : " + webSettings.CacheBuilderEnabled);
192
193             webSettings.CacheBuilderEnabled = true;
194             Assert.AreEqual(true, webSettings.CacheBuilderEnabled, "Should be equal!");
195
196             webSettings.CacheBuilderEnabled = false;
197             Assert.AreEqual(false, webSettings.CacheBuilderEnabled, "Should be equal!");
198
199             webSettings.Dispose();
200             tlog.Debug(tag, $"WebSettingsCacheBuilderEnabled END (OK)");
201         }
202
203         [Test]
204         [Category("P1")]
205         [Description("WebSettings DoNotTrackEnabled.")]
206         [Property("SPEC", "Tizen.NUI.WebSettings.DoNotTrackEnabled A")]
207         [Property("SPEC_URL", "-")]
208         [Property("CRITERIA", "PRW")]
209         [Property("COVPARAM", "")]
210         [Property("AUTHOR", "guowei.wang@samsung.com")]
211         public async Task WebSettingsDoNotTrackEnabled()
212         {
213             tlog.Debug(tag, $"WebSettingsDoNotTrackEnabled START");
214
215             TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
216             EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
217             {
218                 tcs.TrySetResult(true);
219             };
220             webview.PageLoadFinished += onLoadFinished;
221
222             webview.LoadUrl(url);
223             var result = await tcs.Task;
224             Assert.IsTrue(result, "PageLoadFinished event should be invoked");
225
226             // Make current thread (CPU) sleep...
227             await Task.Delay(1);
228
229             webview.PageLoadFinished -= onLoadFinished;
230
231             var webSettings = webview.Settings;
232             tlog.Debug(tag, "DoNotTrackEnabled : " + webSettings.DoNotTrackEnabled);
233
234             webSettings.DoNotTrackEnabled = true;
235             Assert.AreEqual(true, webSettings.DoNotTrackEnabled, "Should be equal!");
236
237             webSettings.DoNotTrackEnabled = false;
238             Assert.AreEqual(false, webSettings.DoNotTrackEnabled, "Should be equal!");
239
240             webSettings.Dispose();
241             tlog.Debug(tag, $"WebSettingsDoNotTrackEnabled END (OK)");
242         }
243
244         [Test]
245         [Category("P1")]
246         [Description("WebSettings ScrollbarThumbFocusNotificationsUsed.")]
247         [Property("SPEC", "Tizen.NUI.WebSettings.ScrollbarThumbFocusNotificationsUsed A")]
248         [Property("SPEC_URL", "-")]
249         [Property("CRITERIA", "PRW")]
250         [Property("COVPARAM", "")]
251         [Property("AUTHOR", "guowei.wang@samsung.com")]
252         public async Task WebSettingsScrollbarThumbFocusNotificationsUsed()
253         {
254             tlog.Debug(tag, $"WebSettingsScrollbarThumbFocusNotificationsUsed START");
255
256             TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
257             EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
258             {
259                 tcs.TrySetResult(true);
260             };
261             webview.PageLoadFinished += onLoadFinished;
262
263             webview.LoadUrl(url);
264             var result = await tcs.Task;
265             Assert.IsTrue(result, "PageLoadFinished event should be invoked");
266
267             // Make current thread (CPU) sleep...
268             await Task.Delay(1);
269
270             webview.PageLoadFinished -= onLoadFinished;
271
272             var webSettings = webview.Settings;
273             tlog.Debug(tag, "ScrollbarThumbFocusNotificationsUsed : " + webSettings.ScrollbarThumbFocusNotificationsUsed);
274
275             webSettings.ScrollbarThumbFocusNotificationsUsed = true;
276             tlog.Debug(tag, "ScrollbarThumbFocusNotificationsUsed : " + webSettings.ScrollbarThumbFocusNotificationsUsed);
277
278             webSettings.DoNotTrackEnabled = false;
279             tlog.Debug(tag, "ScrollbarThumbFocusNotificationsUsed : " + webSettings.ScrollbarThumbFocusNotificationsUsed);
280
281             webSettings.Dispose();
282             tlog.Debug(tag, $"WebSettingsScrollbarThumbFocusNotificationsUsed END (OK)");
283         }
284
285         [Test]
286         [Category("P1")]
287         [Description("WebSettings FileAccessFromExternalUrlAllowed.")]
288         [Property("SPEC", "Tizen.NUI.WebSettings.FileAccessFromExternalUrlAllowed A")]
289         [Property("SPEC_URL", "-")]
290         [Property("CRITERIA", "PRW")]
291         [Property("COVPARAM", "")]
292         [Property("AUTHOR", "guowei.wang@samsung.com")]
293         public async Task WebSettingsFileAccessFromExternalUrlAllowed()
294         {
295             tlog.Debug(tag, $"WebSettingsFileAccessFromExternalUrlAllowed START");
296
297             TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
298             EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
299             {
300                 tcs.TrySetResult(true);
301             };
302             webview.PageLoadFinished += onLoadFinished;
303
304             webview.LoadUrl(url);
305             var result = await tcs.Task;
306             Assert.IsTrue(result, "PageLoadFinished event should be invoked");
307
308             // Make current thread (CPU) sleep...
309             await Task.Delay(1);
310
311             webview.PageLoadFinished -= onLoadFinished;
312
313             var webSettings = webview.Settings;
314             tlog.Debug(tag, "FileAccessFromExternalUrlAllowed : " + webSettings.FileAccessFromExternalUrlAllowed);
315
316             webSettings.FileAccessFromExternalUrlAllowed = true;
317             Assert.AreEqual(true, webSettings.FileAccessFromExternalUrlAllowed, "Should be equal!");
318
319             webSettings.FileAccessFromExternalUrlAllowed = false;
320             Assert.AreEqual(false, webSettings.FileAccessFromExternalUrlAllowed, "Should be equal!");
321
322             webSettings.Dispose();
323             tlog.Debug(tag, $"WebSettingsFileAccessFromExternalUrlAllowed END (OK)");
324         }
325
326         [Test]
327         [Category("P1")]
328         [Description("WebSettings AutoFittingEnabled.")]
329         [Property("SPEC", "Tizen.NUI.WebSettings.AutoFittingEnabled A")]
330         [Property("SPEC_URL", "-")]
331         [Property("CRITERIA", "PRW")]
332         [Property("COVPARAM", "")]
333         [Property("AUTHOR", "guowei.wang@samsung.com")]
334         public async Task WebSettingsAutoFittingEnabled()
335         {
336             tlog.Debug(tag, $"WebSettingsAutoFittingEnabled START");
337
338             TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
339             EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
340             {
341                 tcs.TrySetResult(true);
342             };
343             webview.PageLoadFinished += onLoadFinished;
344
345             webview.LoadUrl(url);
346             var result = await tcs.Task;
347             Assert.IsTrue(result, "PageLoadFinished event should be invoked");
348
349             // Make current thread (CPU) sleep...
350             await Task.Delay(1);
351
352             webview.PageLoadFinished -= onLoadFinished;
353
354             var webSettings = webview.Settings;
355             tlog.Debug(tag, "AutoFittingEnabled : " + webSettings.AutoFittingEnabled);
356
357             webSettings.AutoFittingEnabled = true;
358             Assert.AreEqual(true, webSettings.AutoFittingEnabled, "Should be equal!");
359
360             webSettings.AutoFittingEnabled = false;
361             Assert.AreEqual(false, webSettings.AutoFittingEnabled, "Should be equal!");
362
363             webSettings.Dispose();
364             tlog.Debug(tag, $"WebSettingsAutoFittingEnabled END (OK)");
365         }
366
367         [Test]
368         [Category("P1")]
369         [Description("WebSettings PluginsEnabled.")]
370         [Property("SPEC", "Tizen.NUI.WebSettings.PluginsEnabled A")]
371         [Property("SPEC_URL", "-")]
372         [Property("CRITERIA", "PRW")]
373         [Property("COVPARAM", "")]
374         [Property("AUTHOR", "guowei.wang@samsung.com")]
375         public async Task WebSettingsPluginsEnabled()
376         {
377             tlog.Debug(tag, $"WebSettingsPluginsEnabled START");
378
379             TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
380             EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
381             {
382                 tcs.TrySetResult(true);
383             };
384             webview.PageLoadFinished += onLoadFinished;
385
386             webview.LoadUrl(url);
387             var result = await tcs.Task;
388             Assert.IsTrue(result, "PageLoadFinished event should be invoked");
389
390             // Make current thread (CPU) sleep...
391             await Task.Delay(1);
392
393             webview.PageLoadFinished -= onLoadFinished;
394
395             var webSettings = webview.Settings;
396             tlog.Debug(tag, "PluginsEnabled : " + webSettings.PluginsEnabled);
397
398             webSettings.PluginsEnabled = true;
399             Assert.AreEqual(true, webSettings.PluginsEnabled, "Should be equal!");
400
401             webSettings.PluginsEnabled = false;
402             Assert.AreEqual(false, webSettings.PluginsEnabled, "Should be equal!");
403
404             webSettings.Dispose();
405             tlog.Debug(tag, $"WebSettingsPluginsEnabled END (OK)");
406         }
407
408         [Test]
409         [Category("P1")]
410         [Description("WebSettings PrivateBrowsingEnabled.")]
411         [Property("SPEC", "Tizen.NUI.WebSettings.PrivateBrowsingEnabled A")]
412         [Property("SPEC_URL", "-")]
413         [Property("CRITERIA", "PRW")]
414         [Property("COVPARAM", "")]
415         [Property("AUTHOR", "guowei.wang@samsung.com")]
416         public async Task WebSettingsPrivateBrowsingEnabled()
417         {
418             tlog.Debug(tag, $"WebSettingsPrivateBrowsingEnabled START");
419
420             TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
421             EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
422             {
423                 tcs.TrySetResult(true);
424             };
425             webview.PageLoadFinished += onLoadFinished;
426
427             webview.LoadUrl(url);
428             var result = await tcs.Task;
429             Assert.IsTrue(result, "PageLoadFinished event should be invoked");
430
431             // Make current thread (CPU) sleep...
432             await Task.Delay(1);
433
434             webview.PageLoadFinished -= onLoadFinished;
435
436             var webSettings = webview.Settings;
437             tlog.Debug(tag, "PrivateBrowsingEnabled : " + webSettings.PrivateBrowsingEnabled);
438
439             webSettings.PrivateBrowsingEnabled = true;
440             tlog.Debug(tag, "PrivateBrowsingEnabled : " + webSettings.PrivateBrowsingEnabled);
441
442             webSettings.PrivateBrowsingEnabled = false;
443             tlog.Debug(tag, "PrivateBrowsingEnabled : " + webSettings.PrivateBrowsingEnabled);
444
445             webSettings.Dispose();
446             tlog.Debug(tag, $"WebSettingsPrivateBrowsingEnabled END (OK)");
447         }
448
449         [Test]
450         [Category("P1")]
451         [Description("WebSettings LinkMagnifierEnabled.")]
452         [Property("SPEC", "Tizen.NUI.WebSettings.LinkMagnifierEnabled A")]
453         [Property("SPEC_URL", "-")]
454         [Property("CRITERIA", "PRW")]
455         [Property("COVPARAM", "")]
456         [Property("AUTHOR", "guowei.wang@samsung.com")]
457         public async Task WebSettingsLinkMagnifierEnabled()
458         {
459             tlog.Debug(tag, $"WebSettingsLinkMagnifierEnabled START");
460
461             TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
462             EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
463             {
464                 tcs.TrySetResult(true);
465             };
466             webview.PageLoadFinished += onLoadFinished;
467
468             webview.LoadUrl(url);
469             var result = await tcs.Task;
470             Assert.IsTrue(result, "PageLoadFinished event should be invoked");
471
472             // Make current thread (CPU) sleep...
473             await Task.Delay(1);
474
475             webview.PageLoadFinished -= onLoadFinished;
476
477             var webSettings = webview.Settings;
478             tlog.Debug(tag, "LinkMagnifierEnabled : " + webSettings.LinkMagnifierEnabled);
479
480             webSettings.LinkMagnifierEnabled = true;
481             tlog.Debug(tag, "LinkMagnifierEnabled : " + webSettings.LinkMagnifierEnabled);
482
483             webSettings.LinkMagnifierEnabled = false;
484             tlog.Debug(tag, "LinkMagnifierEnabled : " + webSettings.LinkMagnifierEnabled);
485
486             webSettings.Dispose();
487             tlog.Debug(tag, $"WebSettingsLinkMagnifierEnabled END (OK)");
488         }
489
490         [Test]
491         [Category("P1")]
492         [Description("WebSettings KeypadWithoutUserActionUsed.")]
493         [Property("SPEC", "Tizen.NUI.WebSettings.KeypadWithoutUserActionUsed A")]
494         [Property("SPEC_URL", "-")]
495         [Property("CRITERIA", "PRW")]
496         [Property("COVPARAM", "")]
497         [Property("AUTHOR", "guowei.wang@samsung.com")]
498         public async Task WebSettingsKeypadWithoutUserActionUsed()
499         {
500             tlog.Debug(tag, $"WebSettingsKeypadWithoutUserActionUsed START");
501
502             TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
503             EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
504             {
505                 tcs.TrySetResult(true);
506             };
507             webview.PageLoadFinished += onLoadFinished;
508
509             webview.LoadUrl(url);
510             var result = await tcs.Task;
511             Assert.IsTrue(result, "PageLoadFinished event should be invoked");
512
513             // Make current thread (CPU) sleep...
514             await Task.Delay(1);
515
516             webview.PageLoadFinished -= onLoadFinished;
517
518             var webSettings = webview.Settings;
519             tlog.Debug(tag, "KeypadWithoutUserActionUsed : " + webSettings.KeypadWithoutUserActionUsed);
520
521             webSettings.KeypadWithoutUserActionUsed = true;
522             Assert.AreEqual(true, webSettings.KeypadWithoutUserActionUsed, "Should be equal!");
523
524             webSettings.KeypadWithoutUserActionUsed = false;
525             Assert.AreEqual(false, webSettings.KeypadWithoutUserActionUsed, "Should be equal!");
526
527             webSettings.Dispose();
528             tlog.Debug(tag, $"WebSettingsKeypadWithoutUserActionUsed END (OK)");
529         }
530
531         [Test]
532         [Category("P1")]
533         [Description("WebSettings AutofillPasswordFormEnabled.")]
534         [Property("SPEC", "Tizen.NUI.WebSettings.AutofillPasswordFormEnabled A")]
535         [Property("SPEC_URL", "-")]
536         [Property("CRITERIA", "PRW")]
537         [Property("COVPARAM", "")]
538         [Property("AUTHOR", "guowei.wang@samsung.com")]
539         public async Task WebSettingsAutofillPasswordFormEnabled()
540         {
541             tlog.Debug(tag, $"WebSettingsAutofillPasswordFormEnabled START");
542
543             TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
544             EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
545             {
546                 tcs.TrySetResult(true);
547             };
548             webview.PageLoadFinished += onLoadFinished;
549
550             webview.LoadUrl(url);
551             var result = await tcs.Task;
552             Assert.IsTrue(result, "PageLoadFinished event should be invoked");
553
554             // Make current thread (CPU) sleep...
555             await Task.Delay(1);
556
557             webview.PageLoadFinished -= onLoadFinished;
558
559             var webSettings = webview.Settings;
560             tlog.Debug(tag, "AutofillPasswordFormEnabled : " + webSettings.AutofillPasswordFormEnabled);
561
562             webSettings.AutofillPasswordFormEnabled = true;
563             Assert.AreEqual(true, webSettings.AutofillPasswordFormEnabled, "Should be equal!");
564
565             webSettings.AutofillPasswordFormEnabled = false;
566             Assert.AreEqual(false, webSettings.AutofillPasswordFormEnabled, "Should be equal!");
567
568             webSettings.Dispose();
569             tlog.Debug(tag, $"WebSettingsAutofillPasswordFormEnabled END (OK)");
570         }
571
572         [Test]
573         [Category("P1")]
574         [Description("WebSettings FormCandidateDataEnabled.")]
575         [Property("SPEC", "Tizen.NUI.WebSettings.FormCandidateDataEnabled A")]
576         [Property("SPEC_URL", "-")]
577         [Property("CRITERIA", "PRW")]
578         [Property("COVPARAM", "")]
579         [Property("AUTHOR", "guowei.wang@samsung.com")]
580         public async Task WebSettingsFormCandidateDataEnabled()
581         {
582             tlog.Debug(tag, $"WebSettingsFormCandidateDataEnabled START");
583
584             TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
585             EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
586             {
587                 tcs.TrySetResult(true);
588             };
589             webview.PageLoadFinished += onLoadFinished;
590
591             webview.LoadUrl(url);
592             var result = await tcs.Task;
593             Assert.IsTrue(result, "PageLoadFinished event should be invoked");
594
595             // Make current thread (CPU) sleep...
596             await Task.Delay(1);
597
598             webview.PageLoadFinished -= onLoadFinished;
599
600             var webSettings = webview.Settings;
601             tlog.Debug(tag, "FormCandidateDataEnabled : " + webSettings.FormCandidateDataEnabled);
602
603             webSettings.FormCandidateDataEnabled = true;
604             Assert.AreEqual(true, webSettings.FormCandidateDataEnabled, "Should be equal!");
605
606             webSettings.FormCandidateDataEnabled = false;
607             Assert.AreEqual(false, webSettings.FormCandidateDataEnabled, "Should be equal!");
608
609             webSettings.Dispose();
610             tlog.Debug(tag, $"WebSettingsFormCandidateDataEnabled END (OK)");
611         }
612
613         [Test]
614         [Category("P1")]
615         [Description("WebSettings TextSelectionEnabled.")]
616         [Property("SPEC", "Tizen.NUI.WebSettings.TextSelectionEnabled A")]
617         [Property("SPEC_URL", "-")]
618         [Property("CRITERIA", "PRW")]
619         [Property("COVPARAM", "")]
620         [Property("AUTHOR", "guowei.wang@samsung.com")]
621         public async Task WebSettingsTextSelectionEnabled()
622         {
623             tlog.Debug(tag, $"WebSettingsTextSelectionEnabled START");
624
625             TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
626             EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
627             {
628                 tcs.TrySetResult(true);
629             };
630             webview.PageLoadFinished += onLoadFinished;
631
632             webview.LoadUrl(url);
633             var result = await tcs.Task;
634             Assert.IsTrue(result, "PageLoadFinished event should be invoked");
635
636             // Make current thread (CPU) sleep...
637             await Task.Delay(1);
638
639             webview.PageLoadFinished -= onLoadFinished;
640
641             var webSettings = webview.Settings;
642             tlog.Debug(tag, "TextSelectionEnabled : " + webSettings.TextSelectionEnabled);
643
644             webSettings.TextSelectionEnabled = true;
645             Assert.AreEqual(true, webSettings.TextSelectionEnabled, "Should be equal!");
646
647             webSettings.TextSelectionEnabled = false;
648             Assert.AreEqual(false, webSettings.TextSelectionEnabled, "Should be equal!");
649
650             webSettings.Dispose();
651             tlog.Debug(tag, $"WebSettingsTextSelectionEnabled END (OK)");
652         }
653
654         [Test]
655         [Category("P1")]
656         [Description("WebSettings TextAutosizingEnabled.")]
657         [Property("SPEC", "Tizen.NUI.WebSettings.TextAutosizingEnabled A")]
658         [Property("SPEC_URL", "-")]
659         [Property("CRITERIA", "PRW")]
660         [Property("COVPARAM", "")]
661         [Property("AUTHOR", "guowei.wang@samsung.com")]
662         public async Task WebSettingsTextAutosizingEnabled()
663         {
664             tlog.Debug(tag, $"WebSettingsTextAutosizingEnabled START");
665
666             TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
667             EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
668             {
669                 tcs.TrySetResult(true);
670             };
671             webview.PageLoadFinished += onLoadFinished;
672
673             webview.LoadUrl(url);
674             var result = await tcs.Task;
675             Assert.IsTrue(result, "PageLoadFinished event should be invoked");
676
677             // Make current thread (CPU) sleep...
678             await Task.Delay(1);
679
680             webview.PageLoadFinished -= onLoadFinished;
681
682             var webSettings = webview.Settings;
683             tlog.Debug(tag, "TextAutosizingEnabled : " + webSettings.TextAutosizingEnabled);
684
685             webSettings.TextAutosizingEnabled = true;
686             Assert.AreEqual(true, webSettings.TextAutosizingEnabled, "Should be equal!");
687
688             webSettings.TextAutosizingEnabled = false;
689             Assert.AreEqual(false, webSettings.TextAutosizingEnabled, "Should be equal!");
690
691             webSettings.Dispose();
692             tlog.Debug(tag, $"WebSettingsTextAutosizingEnabled END (OK)");
693         }
694
695         [Test]
696         [Category("P1")]
697         [Description("WebSettings ArrowScrollEnabled.")]
698         [Property("SPEC", "Tizen.NUI.WebSettings.ArrowScrollEnabled A")]
699         [Property("SPEC_URL", "-")]
700         [Property("CRITERIA", "PRW")]
701         [Property("COVPARAM", "")]
702         [Property("AUTHOR", "guowei.wang@samsung.com")]
703         public async Task WebSettingsArrowScrollEnabled()
704         {
705             tlog.Debug(tag, $"WebSettingsArrowScrollEnabled START");
706
707             TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
708             EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
709             {
710                 tcs.TrySetResult(true);
711             };
712             webview.PageLoadFinished += onLoadFinished;
713
714             webview.LoadUrl(url);
715             var result = await tcs.Task;
716             Assert.IsTrue(result, "PageLoadFinished event should be invoked");
717
718             // Make current thread (CPU) sleep...
719             await Task.Delay(1);
720
721             webview.PageLoadFinished -= onLoadFinished;
722
723             var webSettings = webview.Settings;
724             tlog.Debug(tag, "ArrowScrollEnabled : " + webSettings.ArrowScrollEnabled);
725
726             webSettings.ArrowScrollEnabled = true;
727             tlog.Debug(tag, "ArrowScrollEnabled" + webSettings.ArrowScrollEnabled);
728
729             webSettings.ArrowScrollEnabled = false;
730             tlog.Debug(tag, "ArrowScrollEnabled" + webSettings.ArrowScrollEnabled);
731
732             webSettings.Dispose();
733             tlog.Debug(tag, $"WebSettingsArrowScrollEnabled END (OK)");
734         }
735
736         [Test]
737         [Category("P1")]
738         [Description("WebSettings ClipboardEnabled.")]
739         [Property("SPEC", "Tizen.NUI.WebSettings.ClipboardEnabled A")]
740         [Property("SPEC_URL", "-")]
741         [Property("CRITERIA", "PRW")]
742         [Property("COVPARAM", "")]
743         [Property("AUTHOR", "guowei.wang@samsung.com")]
744         public async Task WebSettingsClipboardEnabled()
745         {
746             tlog.Debug(tag, $"WebSettingsClipboardEnabled START");
747
748             TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
749             EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
750             {
751                 tcs.TrySetResult(true);
752             };
753             webview.PageLoadFinished += onLoadFinished;
754
755             webview.LoadUrl(url);
756             var result = await tcs.Task;
757             Assert.IsTrue(result, "PageLoadFinished event should be invoked");
758
759             // Make current thread (CPU) sleep...
760             await Task.Delay(1);
761
762             webview.PageLoadFinished -= onLoadFinished;
763
764             var webSettings = webview.Settings;
765             tlog.Debug(tag, "ClipboardEnabled : " + webSettings.ClipboardEnabled);
766
767             webSettings.ClipboardEnabled = true;
768             tlog.Debug(tag, "ClipboardEnabled" + webSettings.ClipboardEnabled);
769
770             webSettings.ClipboardEnabled = false;
771             tlog.Debug(tag, "ClipboardEnabled" + webSettings.ClipboardEnabled);
772
773             webSettings.Dispose();
774             tlog.Debug(tag, $"WebSettingsClipboardEnabled END (OK)");
775         }
776
777         [Test]
778         [Category("P1")]
779         [Description("WebSettings ImePanelEnabled.")]
780         [Property("SPEC", "Tizen.NUI.WebSettings.ImePanelEnabled A")]
781         [Property("SPEC_URL", "-")]
782         [Property("CRITERIA", "PRW")]
783         [Property("COVPARAM", "")]
784         [Property("AUTHOR", "guowei.wang@samsung.com")]
785         public async Task WebSettingsImePanelEnabled()
786         {
787             tlog.Debug(tag, $"WebSettingsImePanelEnabled START");
788
789             TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
790             EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
791             {
792                 tcs.TrySetResult(true);
793             };
794             webview.PageLoadFinished += onLoadFinished;
795
796             webview.LoadUrl(url);
797             var result = await tcs.Task;
798             Assert.IsTrue(result, "PageLoadFinished event should be invoked");
799
800             // Make current thread (CPU) sleep...
801             await Task.Delay(1);
802
803             webview.PageLoadFinished -= onLoadFinished;
804
805             var webSettings = webview.Settings;
806             tlog.Debug(tag, "ImePanelEnabled : " + webSettings.ImePanelEnabled);
807
808             webSettings.ImePanelEnabled = true;
809             Assert.AreEqual(true, webSettings.ImePanelEnabled, "Should be equal!");
810
811             webSettings.ImePanelEnabled = false;
812             Assert.AreEqual(false, webSettings.ImePanelEnabled, "Should be equal!");
813
814             webSettings.Dispose();
815             tlog.Debug(tag, $"WebSettingsImePanelEnabled END (OK)");
816         }
817
818         [Test]
819         [Category("P1")]
820         [Description("WebSettings ScriptsOpenWindowsAllowed.")]
821         [Property("SPEC", "Tizen.NUI.WebSettings.ScriptsOpenWindowsAllowed A")]
822         [Property("SPEC_URL", "-")]
823         [Property("CRITERIA", "PRW")]
824         [Property("COVPARAM", "")]
825         [Property("AUTHOR", "guowei.wang@samsung.com")]
826         public async Task WebSettingsScriptsOpenWindowsAllowed()
827         {
828             tlog.Debug(tag, $"WebSettingsScriptsOpenWindowsAllowed START");
829
830             TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
831             EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
832             {
833                 tcs.TrySetResult(true);
834             };
835             webview.PageLoadFinished += onLoadFinished;
836
837             webview.LoadUrl(url);
838             var result = await tcs.Task;
839             Assert.IsTrue(result, "PageLoadFinished event should be invoked");
840
841             // Make current thread (CPU) sleep...
842             await Task.Delay(1);
843
844             webview.PageLoadFinished -= onLoadFinished;
845
846             var webSettings = webview.Settings;
847             tlog.Debug(tag, "ScriptsOpenWindowsAllowed : " + webSettings.ScriptsOpenWindowsAllowed);
848
849             webSettings.ScriptsOpenWindowsAllowed = true;
850             Assert.AreEqual(true, webSettings.ScriptsOpenWindowsAllowed, "Should be equal!");
851
852             webSettings.ScriptsOpenWindowsAllowed = false;
853             Assert.AreEqual(false, webSettings.ScriptsOpenWindowsAllowed, "Should be equal!");
854
855             webSettings.Dispose();
856             tlog.Debug(tag, $"WebSettingsScriptsOpenWindowsAllowed END (OK)");
857         }
858
859         [Test]
860         [Category("P1")]
861         [Description("WebSettings ViewportMetaTag.")]
862         [Property("SPEC", "Tizen.NUI.WebSettings.ViewportMetaTag A")]
863         [Property("SPEC_URL", "-")]
864         [Property("CRITERIA", "PRW")]
865         [Property("COVPARAM", "")]
866         [Property("AUTHOR", "guowei.wang@samsung.com")]
867         public async Task WebSettingsViewportMetaTag()
868         {
869             tlog.Debug(tag, $"WebSettingsViewportMetaTag START");
870
871             TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
872             EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
873             {
874                 tcs.TrySetResult(true);
875             };
876             webview.PageLoadFinished += onLoadFinished;
877
878             webview.LoadUrl(url);
879             var result = await tcs.Task;
880             Assert.IsTrue(result, "PageLoadFinished event should be invoked");
881
882             // Make current thread (CPU) sleep...
883             await Task.Delay(1);
884
885             webview.PageLoadFinished -= onLoadFinished;
886
887             var webSettings = webview.Settings;
888             tlog.Debug(tag, "ViewportMetaTag : " + webSettings.ViewportMetaTag);
889
890             webSettings.ViewportMetaTag = true;
891             Assert.AreEqual(true, webSettings.ViewportMetaTag, "Should be equal!");
892
893             webSettings.ViewportMetaTag = false;
894             Assert.AreEqual(false, webSettings.ViewportMetaTag, "Should be equal!");
895
896             webSettings.Dispose();
897             tlog.Debug(tag, $"WebSettingsViewportMetaTag END (OK)");
898         }
899
900         [Test]
901         [Category("P1")]
902         [Description("WebSettings ZoomForced.")]
903         [Property("SPEC", "Tizen.NUI.WebSettings.ZoomForced A")]
904         [Property("SPEC_URL", "-")]
905         [Property("CRITERIA", "PRW")]
906         [Property("COVPARAM", "")]
907         [Property("AUTHOR", "guowei.wang@samsung.com")]
908         public async Task WebSettingsZoomForced()
909         {
910             tlog.Debug(tag, $"WebSettingsZoomForced START");
911
912             TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
913             EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
914             {
915                 tcs.TrySetResult(true);
916             };
917             webview.PageLoadFinished += onLoadFinished;
918
919             webview.LoadUrl(url);
920             var result = await tcs.Task;
921             Assert.IsTrue(result, "PageLoadFinished event should be invoked");
922
923             // Make current thread (CPU) sleep...
924             await Task.Delay(1);
925
926             webview.PageLoadFinished -= onLoadFinished;
927
928             var webSettings = webview.Settings;
929             tlog.Debug(tag, "ZoomForced : " + webSettings.ZoomForced);
930
931             webSettings.ZoomForced = true;
932             Assert.AreEqual(true, webSettings.ZoomForced, "Should be equal!");
933
934             webSettings.ZoomForced = false;
935             Assert.AreEqual(false, webSettings.ZoomForced, "Should be equal!");
936
937             webSettings.Dispose();
938             tlog.Debug(tag, $"WebSettingsZoomForced END (OK)");
939         }
940
941         [Test]
942         [Category("P1")]
943         [Description("WebSettings TextZoomEnabled.")]
944         [Property("SPEC", "Tizen.NUI.WebSettings.TextZoomEnabled A")]
945         [Property("SPEC_URL", "-")]
946         [Property("CRITERIA", "PRW")]
947         [Property("COVPARAM", "")]
948         [Property("AUTHOR", "guowei.wang@samsung.com")]
949         public async Task WebSettingsTextZoomEnabled()
950         {
951             tlog.Debug(tag, $"WebSettingsTextZoomEnabled START");
952
953             TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
954             EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
955             {
956                 tcs.TrySetResult(true);
957             };
958             webview.PageLoadFinished += onLoadFinished;
959
960             webview.LoadUrl(url);
961             var result = await tcs.Task;
962             Assert.IsTrue(result, "PageLoadFinished event should be invoked");
963
964             // Make current thread (CPU) sleep...
965             await Task.Delay(1);
966
967             webview.PageLoadFinished -= onLoadFinished;
968
969             var webSettings = webview.Settings;
970             tlog.Debug(tag, "TextZoomEnabled : " + webSettings.TextZoomEnabled);
971
972             webSettings.TextZoomEnabled = true;
973             Assert.AreEqual(true, webSettings.TextZoomEnabled, "Should be equal!");
974
975             webSettings.TextZoomEnabled = false;
976             Assert.AreEqual(false, webSettings.TextZoomEnabled, "Should be equal!");
977
978             webSettings.Dispose();
979             tlog.Debug(tag, $"WebSettingsTextZoomEnabled END (OK)");
980         }
981
982         [Test]
983         [Category("P1")]
984         [Description("WebSettings EnableExtraFeature.")]
985         [Property("SPEC", "Tizen.NUI.WebSettings.EnableExtraFeature M")]
986         [Property("SPEC_URL", "-")]
987         [Property("CRITERIA", "MR")]
988         [Property("COVPARAM", "")]
989         [Property("AUTHOR", "guowei.wang@samsung.com")]
990         public async Task WebSettingsEnableExtraFeature()
991         {
992             tlog.Debug(tag, $"WebSettingsEnableExtraFeature START");
993
994             TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
995             EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
996             {
997                 tcs.TrySetResult(true);
998             };
999             webview.PageLoadFinished += onLoadFinished;
1000
1001             webview.LoadUrl(url);
1002             var result = await tcs.Task;
1003             Assert.IsTrue(result, "PageLoadFinished event should be invoked");
1004
1005             // Make current thread (CPU) sleep...
1006             await Task.Delay(1);
1007
1008             webview.PageLoadFinished -= onLoadFinished;
1009
1010             var webSettings = webview.Settings;
1011
1012             bool newValue = !webSettings.IsExtraFeatureEnabled("longpress,enable");
1013             webSettings.EnableExtraFeature("longpress,enable", newValue);
1014
1015             webSettings.Dispose();
1016
1017             tlog.Debug(tag, $"WebSettingsEnableExtraFeature END (OK)");
1018         }
1019     }
1020 }