update documentation
add sample unit test