unit testing and travis-ci integration