added test coverage and register test