make ulp testing code more generic