Here's a more advanced tutorial on some of the finer points of unit testing with Solidity - What do you do when you want to test whether an assertion or require() call fails? In this video I'll show you how to use an intermediate proxy contract and lower-level Solidity calls to let your Solidity tests continue executing when a contract call is reverted. Let me know if you have any questions and if you found this useful - thanks!