Added Unit and Acceptance Tests