string parser done with tests