setup spec and guard