OMG no. This isn't Scheme. Refactor these tests into some additional functions please.