move parent opt check, update tests