begin to add unit tests