added more tests and descriptions