Because you are not creating a failure situation. Your "No results returned" situation is a perfectly normal (successful) situation returning no object.

If you really want to run into a failure, you'll need to change the HTTP status from 200 to something else (maybe 404) using the PHP header function
header("HTTP/1.1 404 Not Found");