add tests for _recover