forked from BilalY/Rasagar
45 lines
1.0 KiB
C#
45 lines
1.0 KiB
C#
|
using System;
|
||
|
|
||
|
namespace UnityEngine.TestTools
|
||
|
{
|
||
|
/// <summary>
|
||
|
/// A flag indicating the targeted test platforms.
|
||
|
/// </summary>
|
||
|
[Flags]
|
||
|
[Serializable]
|
||
|
public enum TestPlatform : byte
|
||
|
{
|
||
|
/// <summary>
|
||
|
/// Both platforms.
|
||
|
/// </summary>
|
||
|
All = 0xFF,
|
||
|
/// <summary>
|
||
|
/// The EditMode test platform.
|
||
|
/// </summary>
|
||
|
EditMode = 1 << 1,
|
||
|
/// <summary>
|
||
|
/// The PlayMode test platform.
|
||
|
/// </summary>
|
||
|
PlayMode = 1 << 2
|
||
|
}
|
||
|
|
||
|
internal static class TestPlatformEnumExtensions
|
||
|
{
|
||
|
public static bool IsFlagIncluded(this TestPlatform flags, TestPlatform flag)
|
||
|
{
|
||
|
return (flags & flag) == flag;
|
||
|
}
|
||
|
|
||
|
public static TestPlatform MergeFlags(this TestPlatform[] flags)
|
||
|
{
|
||
|
TestPlatform mergedFlag = default;
|
||
|
foreach (var flag in flags)
|
||
|
{
|
||
|
mergedFlag |= flag;
|
||
|
}
|
||
|
|
||
|
return mergedFlag;
|
||
|
}
|
||
|
}
|
||
|
}
|