namespace UIWidgets.Tests
{
using System;
using System.Collections;
using UIWidgets;
using UnityEngine;
using UnityEngine.Serialization;
///
/// Smoke test.
///
public class SmokeTest : MonoBehaviour
{
///
/// Accordion.
///
[SerializeField]
[FormerlySerializedAs("accordion")]
protected Accordion Accordion;
///
/// Start this instance.
///
protected virtual void Start()
{
#if UNITY_STANDALONE
var args = System.Environment.GetCommandLineArgs();
if (Array.IndexOf(args, "-smoke-test") != -1)
{
StartCoroutine(SimpleTest());
}
#endif
}
///
/// Simple test.
///
/// Coroutine.
[System.Diagnostics.CodeAnalysis.SuppressMessage("Performance", "HAA0401:Possible allocation of reference type enumerator", Justification = "Enumerator is reusable.")]
protected IEnumerator SimpleTest()
{
yield return UtilitiesTime.Wait(5f, true);
var items = Accordion.DataSource;
if (!Accordion.DataSource[0].Open || !Accordion.DataSource[0].ContentObject.activeSelf)
{
throw new UnityException("Overview is not active!");
}
foreach (var item in items)
{
if (item.ToggleObject.name == "Exit")
{
continue;
}
Accordion.ToggleItem(item);
yield return UtilitiesTime.Wait(5f, true);
}
Application.Quit();
}
}
}