Tag Archives: NSAssert

How to assure your values are as intended with NSAssert

NSAssert is a macro which allows you to test for specific values if and when they occur. Rather than having to figure out where your app has passed the wrong value several stages before a problem happened, NSAssert can be used like NSLog – with the helpful difference that if all is well, there’s no log output.

Imagine your app is calculating a value. We can check if the value is as we had expected it to be:

In this case, everything is fine and we don’t see any log output. Let’s change the value to something else, and see our message together with a rather intimidating stack trace hit our log:

You can also pass values and print them to the log. Depending on how many variables you pass, add a number to NSAssert like so:

Use NSAssert2, NSAssert3 and so forth for more than one value.