add #parse and test cases
fix npm test