using System; using System.Collections; using System.Collections.Generic; using System.Linq; using NUnit.Framework; using UnityEngine; using UnityEngine.EventSystems; using UnityEngine.SceneManagement; using UnityEngine.TestTools; using UnityEngine.UI; public class CreateNewSceneTest { private static bool _previousTestCompleted = false; [UnityTest] public static IEnumerator RunTestsSequentially() { //MenuScript menuScript = GameObject.FindObjectOfType(); //Assert.IsNotNull(menuScript, "Expecting MenuScript Reference"); // Load New Scene yield return SceneManager.LoadSceneAsync("Ciemetric"); // // check if library loads without error // would like to implement a for loop of all our client _previousTestCompleted = false; yield return Test_1_LibraryLoadedWithinTimeLimit(); // after library are loaded, press the play button if (_previousTestCompleted) { _previousTestCompleted = false; yield return Test_2_PressPlay(); } // In the room selection Menu // select room1 if (_previousTestCompleted) { _previousTestCompleted = false; yield return Test_3_ChooseRoom(); } if (_previousTestCompleted) { _previousTestCompleted = false; yield return Test_4_PlaceAnObject(); } } static IEnumerator Test_1_LibraryLoadedWithinTimeLimit() { // float duration = 60f; // do // { // yield return null; // duration -= Time.deltaTime; // } // while (duration >= 0 && !MenuScript.IsReady()); //Assert.IsTrue(MenuScript.IsReady(), "Library Loaded Successfully"); yield return null; _previousTestCompleted = true; } static IEnumerator Test_2_PressPlay() { // Give time for colors to load on menu yield return new WaitForSeconds(2); //TestPressPlayButton(); yield return null; //TestOpenRoomPanel(); yield return null; _previousTestCompleted = true; } static IEnumerator Test_3_ChooseRoom() { //TestGoBackToMenu(); yield return null; //TestPressPlayButton(); yield return null; //TestOpenRoomPanel(); yield return null; //TestSelectARoom(); // Test Height changes // Test Clicking over all room options // Test Opening and closing Tooltips // Test Create 3D //TestCreate3D(); yield return null; _previousTestCompleted = true; } static IEnumerator Test_4_PlaceAnObject() { // Find required game objects GameObject buttonLeft = GameObject.Find("BTN_LEFT"); Assert.IsNotNull(buttonLeft, "Expect BTN_LEFT Reference"); GameObject cabinetButtonGameObject = GameObject.Find("CABINET"); Assert.IsNotNull(cabinetButtonGameObject, "Expect CABINET Reference"); // press cabinet button on left side // Create a new pointer event data PointerEventData pointerEventData = new PointerEventData(EventSystem.current); // Click cabinet button cabinetButtonGameObject.GetComponent