diff --git a/tests/numpy_utils.py b/tests/numpy_utils.py
index <HASH>..<HASH> 100644
--- a/tests/numpy_utils.py
+++ b/tests/numpy_utils.py
@@ -24,8 +24,12 @@ def check_fun_and_grads(fun, args, kwargs, argnums):
     wrt_args = [args[i] for i in argnums]
     try:
         if isinstance(fun, primitive):
-            check_equivalent(fun(*args, **kwargs),
-                             fun.fun(*args, **kwargs))
+            wrapped   = fun(*args, **kwargs)
+            unwrapped = fun.fun(*args, **kwargs)
+            try:
+                assert wrapped == unwrapped
+            except:
+                check_equivalent(wrapped, unwrapped)
     except:
         print("Value test failed! Args were", args, kwargs)
         raise
Value checks were failing because vspace can't handle ints. Fixed by testing for direct equality before resorting to vspace equivalence test