add some tests for marshal