summaryrefslogtreecommitdiff
path: root/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEngine.TestRunner/NUnitExtensions/Attributes/TestMustExpectAllLogsAttribute.cs
diff options
context:
space:
mode:
authorAndrew Lee <alee14498@protonmail.com>2020-04-19 17:19:32 -0400
committerAndrew Lee <alee14498@protonmail.com>2020-04-19 17:19:32 -0400
commitc55fba8ab2a1c9d3df65eda4a5a1e957f4aa1f78 (patch)
treeee4d51c7c1d633e11f46453ef1edd3c77c4ef9f7 /Library/PackageCache/com.unity.test-framework@1.1.11/UnityEngine.TestRunner/NUnitExtensions/Attributes/TestMustExpectAllLogsAttribute.cs
downloadProject-Sandbox-c55fba8ab2a1c9d3df65eda4a5a1e957f4aa1f78.tar.gz
Project-Sandbox-c55fba8ab2a1c9d3df65eda4a5a1e957f4aa1f78.tar.bz2
Project-Sandbox-c55fba8ab2a1c9d3df65eda4a5a1e957f4aa1f78.zip
Inital commit
Diffstat (limited to 'Library/PackageCache/com.unity.test-framework@1.1.11/UnityEngine.TestRunner/NUnitExtensions/Attributes/TestMustExpectAllLogsAttribute.cs')
-rw-r--r--Library/PackageCache/com.unity.test-framework@1.1.11/UnityEngine.TestRunner/NUnitExtensions/Attributes/TestMustExpectAllLogsAttribute.cs28
1 files changed, 28 insertions, 0 deletions
diff --git a/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEngine.TestRunner/NUnitExtensions/Attributes/TestMustExpectAllLogsAttribute.cs b/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEngine.TestRunner/NUnitExtensions/Attributes/TestMustExpectAllLogsAttribute.cs
new file mode 100644
index 0000000..8f2ea0f
--- /dev/null
+++ b/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEngine.TestRunner/NUnitExtensions/Attributes/TestMustExpectAllLogsAttribute.cs
@@ -0,0 +1,28 @@
+using System;
+
+namespace UnityEngine.TestTools
+{
+ /// <summary>
+ /// The presence of this attribute will cause the test runner to require that every single log is expected. By
+ /// default, the runner will only automatically fail on any error logs, so this adds warnings and infos as well.
+ /// It is the same as calling `LogAssert.NoUnexpectedReceived()` at the bottom of every affected test.
+ ///
+ /// This attribute can be applied to test assemblies (will affect every test in the assembly), fixtures (will
+ /// affect every test in the fixture), or on individual test methods. It is also automatically inherited from base
+ /// fixtures.
+ ///
+ /// The MustExpect property (on by default) lets you selectively enable or disable the higher level value. For
+ /// example when migrating an assembly to this more strict checking method, you might attach
+ /// `[assembly:TestMustExpectAllLogs]` to the assembly itself, but then whitelist failing fixtures and test methods
+ /// with `[TestMustExpectAllLogs(MustExpect=false)]` until they can be migrated. This also means new tests in that
+ /// assembly would be required to have the more strict checking.
+ /// </summary>
+ [AttributeUsage(AttributeTargets.Assembly | AttributeTargets.Class | AttributeTargets.Method)]
+ public class TestMustExpectAllLogsAttribute : Attribute
+ {
+ public TestMustExpectAllLogsAttribute(bool mustExpect = true)
+ => MustExpect = mustExpect;
+
+ public bool MustExpect { get; }
+ }
+}