basic tests and functionality added