refactor to shared examples