Generates a diff by matching against expected values, classes, regexes and/or procs.