Return final check state without actually exiting
Refactor tests to reflect actual execution path
Don't need the pipe if we don't have any perfdata