From bedf5cb459c42427399f6015fd194298e51cb1e9 Mon Sep 17 00:00:00 2001 From: David Wendt Date: Mon, 24 Feb 2020 14:12:51 -0500 Subject: [PATCH] Add a basic test for function calls. --- core/tests/regression_tests.rs | 1 + core/tests/swfs/avm2/function_call/Test.as | 11 +++++++++++ core/tests/swfs/avm2/function_call/output.txt | 3 +++ core/tests/swfs/avm2/function_call/test.fla | Bin 0 -> 3985 bytes core/tests/swfs/avm2/function_call/test.swf | Bin 0 -> 685 bytes 5 files changed, 15 insertions(+) create mode 100644 core/tests/swfs/avm2/function_call/Test.as create mode 100644 core/tests/swfs/avm2/function_call/output.txt create mode 100644 core/tests/swfs/avm2/function_call/test.fla create mode 100644 core/tests/swfs/avm2/function_call/test.swf diff --git a/core/tests/regression_tests.rs b/core/tests/regression_tests.rs index 5fb7f61b7..bce5b6481 100644 --- a/core/tests/regression_tests.rs +++ b/core/tests/regression_tests.rs @@ -228,6 +228,7 @@ swf_tests! { (context_menu, "avm1/context_menu", 1), (context_menu_item, "avm1/context_menu_item", 1), (as3_hello_world, "avm2/hello_world", 1), + (as3_function_call, "avm2/function_call", 1), } // TODO: These tests have some inaccuracies currently, so we use approx_eq to test that numeric values are close enough. diff --git a/core/tests/swfs/avm2/function_call/Test.as b/core/tests/swfs/avm2/function_call/Test.as new file mode 100644 index 000000000..612b75f96 --- /dev/null +++ b/core/tests/swfs/avm2/function_call/Test.as @@ -0,0 +1,11 @@ +package { + public class Test {} +} + +function testfunc(v1, v2, v3) { + trace(v1); + trace(v2); + trace(v3); +} + +testfunc("arg1", "arg2", "arg3"); \ No newline at end of file diff --git a/core/tests/swfs/avm2/function_call/output.txt b/core/tests/swfs/avm2/function_call/output.txt new file mode 100644 index 000000000..6a8e7e73b --- /dev/null +++ b/core/tests/swfs/avm2/function_call/output.txt @@ -0,0 +1,3 @@ +arg1 +arg2 +arg3 diff --git a/core/tests/swfs/avm2/function_call/test.fla b/core/tests/swfs/avm2/function_call/test.fla new file mode 100644 index 0000000000000000000000000000000000000000..e8422682499736c841d221c3be55563405f47944 GIT binary patch literal 3985 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 literal 0 HcmV?d00001 diff --git a/core/tests/swfs/avm2/function_call/test.swf b/core/tests/swfs/avm2/function_call/test.swf new file mode 100644 index 0000000000000000000000000000000000000000..96dae9e090dc5b2d14b432688aa0bdd57e302f12 GIT binary patch literal 685 zcmV;e0#f}$S5qrK1ONbdoRw4EP7^^CK4KVJY?Ne&jXg>3aS>zC}~+UDTN{@%-1wb#3+`Fd}&W5D@*l=Be|Tg+vv z1%UIpFOmTGmxR1fYqLkp5Av3uEj=v<+_VR73v>Z)2=Pc@CwA8=A6Slif zhj!D4R^=jadM+6j$goI;rE;xoR(fq_dIQ_;GPBk5m?`MK>A$mm(;A)?O?%>X(z3eU zt*uF5CGe~klP&K}L5QLdrRAHF^3x@iCu5nh+U=^a4qKkn57z!do<7CG-r113fuGnF zYKPCk3R)fJ#dpGygu_eK+<@_#0%yoVB>l&IrRN4bGV|2KzUKt2_}{&odYWX^w3d!! zVhfrwlfEY*B27_LDN-uwRE|kiFL?2YdL)dgAV#7I9$|4THEGhsB7MpNeN7?;DZBV9clXSmC= T*(C`7;ai^*Z1bBRjl&^XcSKKg literal 0 HcmV?d00001