Added tests and did basic coverage testing