added generic unit tests