If the monad being tested implements the new state behaviour, evaluate the expected value and the result by running them both against a default state before comparing them.
'do' is a built-in lisp macro