This is a beautiful refactor!  Each of these function encapsulates all the checking necessary, is clearly named, and so reading the list of function calls tells me (concisely) exactly what this test is doing in sequence.  Very neat and readable.