fix all book test and improve coverage