fix issue #24, honor path when revrange is None
clean up some test cases