Adding unit tests and acceptance tests