using System.Collections; using NUnit.Framework; using UnityEngine; using UnityEngine.TestTools; using UnityEngine.TestTools.Graphics; using UnityEngine.SceneManagement; public class LWGraphicsTests { [UnityTest, Category("LightWeightRP")] [PrebuildSetup("SetupGraphicsTestCases")] [UseGraphicsTestCases] public IEnumerator Run(GraphicsTestCase testCase) { SceneManager.LoadScene(testCase.ScenePath); // Always wait one frame for scene load yield return null; var camera = GameObject.FindGameObjectWithTag("MainCamera").GetComponent(); var settings = Object.FindObjectOfType(); Assert.IsNotNull(settings, "Invalid test scene, couldn't find PostProcessingGraphicsTestSettings"); for (int i = 0; i < settings.WaitFrames; i++) yield return null; ImageAssert.AreEqual(testCase.ReferenceImage, camera, settings.ImageComparisonSettings); } #if UNITY_EDITOR [TearDown] public void DumpImagesInEditor() { UnityEditor.TestTools.Graphics.ResultsUtility.ExtractImagesFromTestProperties(TestContext.CurrentContext.Test); } #endif }