From 07814fdf5304e0b857f3197c4db8bd5db3555079 Mon Sep 17 00:00:00 2001 From: Mike Welsh Date: Thu, 2 Jul 2020 20:18:30 -0700 Subject: [PATCH] tests: Add test for Error --- core/tests/regression_tests.rs | 1 + core/tests/swfs/avm1/error/output.txt | 59 ++++++++++++++++++++++++++ core/tests/swfs/avm1/error/test.fla | Bin 0 -> 4852 bytes core/tests/swfs/avm1/error/test.swf | Bin 0 -> 384 bytes 4 files changed, 60 insertions(+) create mode 100644 core/tests/swfs/avm1/error/output.txt create mode 100644 core/tests/swfs/avm1/error/test.fla create mode 100644 core/tests/swfs/avm1/error/test.swf diff --git a/core/tests/regression_tests.rs b/core/tests/regression_tests.rs index 552fdc9e8..eb748bfd6 100644 --- a/core/tests/regression_tests.rs +++ b/core/tests/regression_tests.rs @@ -214,6 +214,7 @@ swf_tests! { #[ignore] (edittext_html_roundtrip, "avm1/edittext_html_roundtrip", 1), (define_local, "avm1/define_local", 1), (textfield_variable, "avm1/textfield_variable", 8), + (error, "avm1/error", 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/avm1/error/output.txt b/core/tests/swfs/avm1/error/output.txt new file mode 100644 index 000000000..55bffc7ff --- /dev/null +++ b/core/tests/swfs/avm1/error/output.txt @@ -0,0 +1,59 @@ +// Error.prototype.hasOwnProperty('name') +true +// Error.prototype.hasOwnProperty('message') +true + +// error = new Error() +// error.toString() +Error +// error.name +Error +// error.message +Error +// error.hasOwnProperty('name') +false +// error.hasOwnProperty('message') +false +// error.name = 'TestError' +// error.message = 'TestErrorMessage' +// error.name +TestError +// error.message +TestErrorMessage +// error.hasOwnProperty('name') +true +// error.hasOwnProperty('message') +true + +// error = new Error('TestError') +// error.toString() +TestError +// error.name +Error +// error.message +TestError +// error.name = {} +// error.message = null +// error.name +[object Object] +// error.message +TestError +// error.toString() +TestError + +// error = new Error(undefined) +// error.toString() +Error +// error.name +Error +// error.message +Error + +// error = new Error(null) +// error.toString() +null +// error.name +Error +// error.message +null + diff --git a/core/tests/swfs/avm1/error/test.fla b/core/tests/swfs/avm1/error/test.fla new file mode 100644 index 0000000000000000000000000000000000000000..40f656c2f7d9ce7198889a4b58123f1fdf71c1c1 GIT binary patch literal 4852 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 JzC0Pg{{fSeFU9}> literal 0 HcmV?d00001 diff --git a/core/tests/swfs/avm1/error/test.swf b/core/tests/swfs/avm1/error/test.swf new file mode 100644 index 0000000000000000000000000000000000000000..650e7cca2ddc8e079683a94197a895220cc21420 GIT binary patch literal 384 zcmV-`0e}8OS5prS1pokeoV8NRPQpMGy)C6oK}39F;(}F6H{}O3lAue$sCz@gh$Jv2 z(-I`cy z6L1ygs^&$L;DvN(*&wi(bbR;Tr(-f=Omtk6B3yinoMT|iNL%@J$W#Xw(0ah0FA`c1 zA2&Lu3U5L)_>N=`p6IaI{`D=Z7nx5c*=BPx#7|>_hjup4l{N$_ATR?1kWy0EPlD7l z4i$QQ)$UBb6$P(v5uW=n#HL?VNMGYz7rrqlVB|q;f~B5>k5NQcXa*gm#np zBolV7C6lF?y~svmN>uOj+kOJm(Lw)z6UbLNrIX#h`B4VQ&-G%{0E<( elE?{8%%IGOLe2w7^M*86b2o<$lYRkygbi3Q#k2eX literal 0 HcmV?d00001