split test into read and write and separated header description into separate file