63 lines
2.0 KiB
C#
63 lines
2.0 KiB
C#
using System.Collections.Generic;
|
|
using NUnit.Framework;
|
|
using Unity.Pipeline.Config;
|
|
using UnityEditor;
|
|
using UnityEngine;
|
|
|
|
namespace Unity.Pipeline.Tests.Editor
|
|
{
|
|
class RuntimePipelineBuildInfoTests
|
|
{
|
|
private const string TestAssetPath = "Assets/Resources/RuntimePipelineBuildInfo.asset";
|
|
|
|
[SetUp]
|
|
public void SetUp()
|
|
{
|
|
Assert.IsNull(RuntimePipelineBuildInfo.Load(),
|
|
"A RuntimePipelineBuildInfo asset already exists somewhere under a Resources folder in " +
|
|
"this project; these tests require a clean slate. Remove it before running.");
|
|
}
|
|
|
|
[TearDown]
|
|
public void TearDown()
|
|
{
|
|
if (AssetDatabase.LoadAssetAtPath<RuntimePipelineBuildInfo>(TestAssetPath) != null)
|
|
AssetDatabase.DeleteAsset(TestAssetPath);
|
|
}
|
|
|
|
[Test]
|
|
public void DefaultValue_AllowedReloadRootsIsEmpty()
|
|
{
|
|
var info = ScriptableObject.CreateInstance<RuntimePipelineBuildInfo>();
|
|
|
|
Assert.IsNotNull(info.allowedReloadRoots);
|
|
Assert.AreEqual(0, info.allowedReloadRoots.Count);
|
|
|
|
Object.DestroyImmediate(info);
|
|
}
|
|
|
|
[Test]
|
|
public void Load_AssetInResourcesFolder_FindsItWithRoots()
|
|
{
|
|
if (!AssetDatabase.IsValidFolder("Assets/Resources"))
|
|
AssetDatabase.CreateFolder("Assets", "Resources");
|
|
|
|
var info = ScriptableObject.CreateInstance<RuntimePipelineBuildInfo>();
|
|
info.allowedReloadRoots = new List<string> { "C:/fake/project/Assets" };
|
|
AssetDatabase.CreateAsset(info, TestAssetPath);
|
|
AssetDatabase.SaveAssets();
|
|
|
|
var loaded = RuntimePipelineBuildInfo.Load();
|
|
|
|
Assert.IsNotNull(loaded);
|
|
CollectionAssert.AreEqual(new[] { "C:/fake/project/Assets" }, loaded.allowedReloadRoots);
|
|
}
|
|
|
|
[Test]
|
|
public void Load_NoAsset_ReturnsNull()
|
|
{
|
|
Assert.IsNull(RuntimePipelineBuildInfo.Load());
|
|
}
|
|
}
|
|
}
|