refactory on request test