implemented test suite