Version: 2019.1

Assert

class in UnityEngine.Assertions

Switch to Manual

Description

The Assert class contains assertion methods for setting invariants in the code.

All method calls will be conditionally included only in a development build, unless specified explicitly. See BuildOptions.ForceEnableAssertions. The inclusion of an assertion is controlled by the UNITY_ASSERTIONS define.

A failure of an assertion method does not break the control flow of the execution. On a failure, an assertion message is logged (LogType.Assert) and the execution continues. If Assert.raiseExceptions is set to true, an AssertionException is thrown instead of logging a message.

If a debugger is attached to the project (System.Diagnostics.Debugger.IsAttached is true), AssertionException will be thrown in order to pause the excecution and invoke the debugger.

using UnityEngine;
using UnityEngine.Assertions;

public class AssertionExampleClass : MonoBehaviour { public int health; public GameObject go;

void Update() { // You expect the health never to be equal to zero Assert.AreNotEqual(0, health);

// The referenced GameObject should be always (in every frame) be active Assert.IsTrue(go.activeInHierarchy); } }

Static Variables

raiseExceptionsWhether Unity should throw an exception on a failure.

Static Functions

AreApproximatelyEqualAssert the values are approximately equal.
AreEqualAssert that the values are equal.
AreNotApproximatelyEqualAsserts that the values are approximately not equal.
AreNotEqualAssert that the values are not equal.
IsFalseReturn true when the condition is false. Otherwise return false.
IsNotNullAssert that the value is not null.
IsNullAssert the value is null.
IsTrueAsserts that the condition is true.