recursion programming exercises 7 and 8 unit tests