Multi-platform .NET bindings to the Ultralight project.
1using System;
2using System.Collections;
3using System.Collections.Generic;
4using NUnit.Framework;
5using UnityEngine.SceneManagement;
6using UnityEngine.TestTools;
7using Object = UnityEngine.Object;
8
9namespace Tests {
10
11 public class TestsSceneTests {
12
13 [UnityTest]
14 [Timeout(int.MaxValue)]
15 public IEnumerator CheckUltralightBrowserDemo() {
16 if (SceneManager.GetActiveScene().name != "TestsScene")
17 SceneManager.LoadScene("TestsScene");
18 yield return null;
19
20 var browser = Object.FindObjectOfType<UltralightBrowserDemo>();
21 Assert.IsNotNull(browser, "Browser should exist.");
22
23 Assert.AreNotEqual("UltralightSharp Demo", browser.Title, "Browser should not be pre-loaded.");
24
25 browser.Url = "file:///index.html";
26
27 Assert.AreNotEqual("UltralightSharp Demo", browser.Title, "Browser should not be load immediately.");
28
29 do {
30 yield return null;
31
32 if (!browser.WillRender)
33 browser.OnWillRenderObject();
34
35 Assert.IsTrue(browser.WillRender, "Should update and render.");
36 } while (browser.IsLoading);
37
38 Assert.IsFalse(browser.Failed, "Should not fail to load.");
39 Assert.IsTrue(browser.IsLoaded, "Should be loaded.");
40 Assert.IsTrue(browser.IsDomReady, "DOM should be ready.");
41
42 Assert.AreEqual("UltralightSharp Demo", browser.Title);
43 }
44
45 }
46
47}