3 using NUnit.Framework.TUnit;
4 using Tizen.NUI.Components;
5 using Tizen.NUI.BaseComponents;
6 using System.Threading.Tasks;
8 namespace Tizen.NUI.Devel.Tests
10 using tlog = Tizen.Log;
13 [Description("public/WebView/WebPageLoadError")]
14 public class PublicWebPageLoadErrorTest
16 private const string tag = "NUITEST";
17 private const string errorUrl = "file:///file_that_does_not_exist.html";
18 private BaseComponents.WebView webview = null;
23 webview = new BaseComponents.WebView()
25 Size = new Size(500, 200)
27 tlog.Info(tag, "Init() is called!");
34 tlog.Info(tag, "Destroy() is called!");
39 [Description("WebPageLoadError Url.")]
40 [Property("SPEC", "Tizen.NUI.WebPageLoadError.Url A")]
41 [Property("SPEC_URL", "-")]
42 [Property("CRITERIA", "PRO")]
43 [Property("COVPARAM", "")]
44 [Property("AUTHOR", "guowei.wang@samsung.com")]
45 public async Task WebPageLoadError()
47 tlog.Debug(tag, $"WebPageLoadErrorUrl START");
49 TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
50 EventHandler<WebViewPageLoadErrorEventArgs> onLoadError = (s, e) =>
53 var url = e.PageLoadError.Url;
54 Log.Info(tag, $"load error, Url: {url}");
55 if (url is string && url.Equals(errorUrl))
60 var code = e.PageLoadError.Code;
61 Log.Info(tag, $"load error, Code: {code}");
62 if (code.GetType() == typeof(WebPageLoadError.ErrorCode) && (code.Equals(NUI.WebPageLoadError.ErrorCode.CannotLookupHost) || code.Equals(NUI.WebPageLoadError.ErrorCode.Unknown)))
67 var type = e.PageLoadError.Type;
68 Log.Info(tag, $"load error, Type: {type}");
69 if (type.GetType() == typeof(WebPageLoadError.ErrorType) && type.Equals(NUI.WebPageLoadError.ErrorType.Network))
74 var description = e.PageLoadError.Description;
75 Log.Info(tag, $"load error, Description: {description}");
76 if (description is string)
81 tcs.TrySetResult(!failed);
84 webview.PageLoadError += onLoadError;
86 webview.LoadUrl(errorUrl);
87 var result = await tcs.Task;
88 Assert.IsTrue(result, "PageLoadError should be invoked.");
90 // Make current thread (CPU) sleep...
93 webview.PageLoadError -= onLoadError;
95 tlog.Debug(tag, $"WebPageLoadErrorUrl END (OK)");