updated test
updated tests and code