add addition unit tests and new integration tests