if test use new implementation