Class ConditionalIgnoreAttribute
This attribute is an alternative to the standard Ignore attribute in NUnit. It allows for ignoring tests only under a specified condition. The condition evaluates during OnLoad, referenced by ID.
Namespace: UnityEngine.TestTools
Syntax
public class ConditionalIgnoreAttribute : NUnitAttribute, IApplyToTest
Constructors
ConditionalIgnoreAttribute(String, String)
Initializes a new instance of the ConditionalIgnoreAttribute class with a condition key.
Declaration
public ConditionalIgnoreAttribute(string conditionKey, string ignoreReason)
Parameters
| Type | Name | Description |
|---|---|---|
| String | conditionKey | The key to check for enabling the conditional ignore. The condition is set with the static AddConditionalIgnoreMapping(String, Boolean) method. |
| String | ignoreReason | The reason for the ignore. |
Methods
AddConditionalIgnoreMapping(String, Boolean)
Adds a flag indicating whether tests with the same key should be ignored.
Declaration
public static void AddConditionalIgnoreMapping(string key, bool value)
Parameters
| Type | Name | Description |
|---|---|---|
| String | key | The key to ignore tests for. |
| Boolean | value | A boolean value indicating whether the tests should be ignored. |
Examples
An example in which tests are ignored in the Mac editor only.
using UnityEditor;
using NUnit.Framework;
using UnityEngine.TestTools;
[InitializeOnLoad]
public class OnLoad
{
static OnLoad()
{
var editorIsOSX = false;
#if UNITY_EDITOR_OSX
editorIsOSX = true;
#endif
ConditionalIgnoreAttribute.AddConditionalIgnoreMapping("IgnoreInMacEditor", editorIsOSX);
}
}
public class MyTestClass
{
[Test, ConditionalIgnore("IgnoreInMacEditor", "Ignored on Mac editor.")]
public void TestNeverRunningInMacEditor()
{
Assert.Pass();
}
}
ApplyToTest(Test)
Modifies a test as defined for the specific attribute.
Declaration
public void ApplyToTest(Test test)
Parameters
| Type | Name | Description |
|---|---|---|
| Test | test | The test to modify |