From a1749790b08909ff5d2b92210b5259172bc13d4c Mon Sep 17 00:00:00 2001 From: mikera Date: Fri, 15 Dec 2023 13:28:11 +0000 Subject: [PATCH] Tests and checks for check-transfer, fixes #475 --- convex-core/src/main/cvx/convex/asset.cvx | 3 ++- convex-core/src/test/java/convex/lib/AssetTester.java | 2 ++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/convex-core/src/main/cvx/convex/asset.cvx b/convex-core/src/main/cvx/convex/asset.cvx index 5b9a8a6bb..763949a9d 100644 --- a/convex-core/src/main/cvx/convex/asset.cvx +++ b/convex-core/src/main/cvx/convex/asset.cvx @@ -78,8 +78,9 @@ {:code "(check-transfer sender receiver [non-fungible-token-address #{1 4 6}])"}] :signature [{:params [sender receiver [asset-address quantity]]}]}} [sender receiver [path quantity]] + (or (callable? path 'check-transfer) (return nil)) (query (call path - (check-transfer sender + (check-transfer sender receiver quantity)))) diff --git a/convex-core/src/test/java/convex/lib/AssetTester.java b/convex-core/src/test/java/convex/lib/AssetTester.java index 9fded922c..47d4d5b3b 100644 --- a/convex-core/src/test/java/convex/lib/AssetTester.java +++ b/convex-core/src/test/java/convex/lib/AssetTester.java @@ -4,6 +4,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNotEquals; import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertNull; import static org.junit.jupiter.api.Assertions.assertTrue; import static convex.test.Assertions.*; @@ -46,6 +47,7 @@ public static void doFungibleTests (Context ctx, ACell token, Address user) { Long BAL=evalL(ctx,"(asset/balance token *address*)"); assertEquals(0L, evalL(ctx,"(asset/balance token actor)")); assertTrue(BAL>0,"Should provide a user account with positive balance!"); + assertNull(eval(ctx,"(asset/check-transfer *address* *address* [token "+BAL+"])")); // New Address gets zero offers {