adding unit tests. finally