add more test and create macro for likely