typo
added null check to callback
reorganized tests