functional and unit tests complete