diff options
Diffstat (limited to 'Library/PackageCache/com.unity.test-framework@1.1.11/UnityEngine.TestRunner/NUnitExtensions/Attributes/ConditionalIgnoreAttribute.cs')
| -rw-r--r-- | Library/PackageCache/com.unity.test-framework@1.1.11/UnityEngine.TestRunner/NUnitExtensions/Attributes/ConditionalIgnoreAttribute.cs | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEngine.TestRunner/NUnitExtensions/Attributes/ConditionalIgnoreAttribute.cs b/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEngine.TestRunner/NUnitExtensions/Attributes/ConditionalIgnoreAttribute.cs new file mode 100644 index 0000000..3cf9714 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEngine.TestRunner/NUnitExtensions/Attributes/ConditionalIgnoreAttribute.cs @@ -0,0 +1,36 @@ +using System.Collections.Generic;
+using NUnit.Framework;
+using NUnit.Framework.Interfaces;
+using NUnit.Framework.Internal;
+
+namespace UnityEngine.TestTools
+{
+ public class ConditionalIgnoreAttribute : NUnitAttribute, IApplyToTest
+ {
+ string m_ConditionKey;
+ string m_IgnoreReason;
+
+ public ConditionalIgnoreAttribute(string conditionKey, string ignoreReason)
+ {
+ m_ConditionKey = conditionKey;
+ m_IgnoreReason = ignoreReason;
+ }
+
+ public void ApplyToTest(Test test)
+ {
+ var key = m_ConditionKey.ToLowerInvariant();
+ if (m_ConditionMap.ContainsKey(key) && m_ConditionMap[key])
+ {
+ test.RunState = RunState.Ignored;
+ string skipReason = string.Format(m_IgnoreReason);
+ test.Properties.Add(PropertyNames.SkipReason, skipReason);
+ }
+ }
+
+ static Dictionary<string, bool> m_ConditionMap = new Dictionary<string, bool>();
+ public static void AddConditionalIgnoreMapping(string key, bool value)
+ {
+ m_ConditionMap.Add(key.ToLowerInvariant(), value);
+ }
+ }
+}
\ No newline at end of file |
