Add more unit test

migrated all from OCaml version