From 6ec1d453b8a12c9744f5966de8a2ff149fb89fcf Mon Sep 17 00:00:00 2001 From: David Wendt Date: Tue, 14 Jul 2020 23:05:31 -0400 Subject: [PATCH] Add tests for `greaterequals`, `greaterthan`, `lessequals`, and `lessthan`. --- core/tests/regression_tests.rs | 4 + core/tests/swfs/avm2/greaterequals/Test.as | 773 ++++++++++++++++++ core/tests/swfs/avm2/greaterequals/output.txt | 512 ++++++++++++ core/tests/swfs/avm2/greaterequals/test.fla | Bin 0 -> 3983 bytes core/tests/swfs/avm2/greaterequals/test.swf | Bin 0 -> 4168 bytes core/tests/swfs/avm2/greaterthan/Test.as | 773 ++++++++++++++++++ core/tests/swfs/avm2/greaterthan/output.txt | 512 ++++++++++++ core/tests/swfs/avm2/greaterthan/test.fla | Bin 0 -> 3983 bytes core/tests/swfs/avm2/greaterthan/test.swf | Bin 0 -> 4152 bytes core/tests/swfs/avm2/lessequals/Test.as | 773 ++++++++++++++++++ core/tests/swfs/avm2/lessequals/output.txt | 512 ++++++++++++ core/tests/swfs/avm2/lessequals/test.fla | Bin 0 -> 3983 bytes core/tests/swfs/avm2/lessequals/test.swf | Bin 0 -> 4165 bytes core/tests/swfs/avm2/lessthan/Test.as | 773 ++++++++++++++++++ core/tests/swfs/avm2/lessthan/output.txt | 512 ++++++++++++ core/tests/swfs/avm2/lessthan/test.fla | Bin 0 -> 3983 bytes core/tests/swfs/avm2/lessthan/test.swf | Bin 0 -> 4149 bytes 17 files changed, 5144 insertions(+) create mode 100644 core/tests/swfs/avm2/greaterequals/Test.as create mode 100644 core/tests/swfs/avm2/greaterequals/output.txt create mode 100644 core/tests/swfs/avm2/greaterequals/test.fla create mode 100644 core/tests/swfs/avm2/greaterequals/test.swf create mode 100644 core/tests/swfs/avm2/greaterthan/Test.as create mode 100644 core/tests/swfs/avm2/greaterthan/output.txt create mode 100644 core/tests/swfs/avm2/greaterthan/test.fla create mode 100644 core/tests/swfs/avm2/greaterthan/test.swf create mode 100644 core/tests/swfs/avm2/lessequals/Test.as create mode 100644 core/tests/swfs/avm2/lessequals/output.txt create mode 100644 core/tests/swfs/avm2/lessequals/test.fla create mode 100644 core/tests/swfs/avm2/lessequals/test.swf create mode 100644 core/tests/swfs/avm2/lessthan/Test.as create mode 100644 core/tests/swfs/avm2/lessthan/output.txt create mode 100644 core/tests/swfs/avm2/lessthan/test.fla create mode 100644 core/tests/swfs/avm2/lessthan/test.swf diff --git a/core/tests/regression_tests.rs b/core/tests/regression_tests.rs index f70d7d15b..8b158eb40 100644 --- a/core/tests/regression_tests.rs +++ b/core/tests/regression_tests.rs @@ -288,6 +288,10 @@ swf_tests! { (as3_if_lte, "avm2/if_lte", 1), (as3_if_gte, "avm2/if_gte", 1), (as3_if_gt, "avm2/if_gt", 1), + (as3_greaterequals, "avm2/greaterequals", 1), + (as3_greaterthan, "avm2/greaterthan", 1), + (as3_lessequals, "avm2/lessequals", 1), + (as3_lessthan, "avm2/lessthan", 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/greaterequals/Test.as b/core/tests/swfs/avm2/greaterequals/Test.as new file mode 100644 index 000000000..960baedd4 --- /dev/null +++ b/core/tests/swfs/avm2/greaterequals/Test.as @@ -0,0 +1,773 @@ +package { + public class Test {} +} + +/// undefined, null, -5, -1, -0, 0, 1, 2, 5, "abc", "2", "true", "false", true, false, NaN + +trace("//undefined >= undefined"); +trace(undefined >= undefined); + +trace("//undefined >= null"); +trace(undefined >= null); + +trace("//undefined >= (-5)"); +trace(undefined >= (-5)); + +trace("//undefined >= (-1)"); +trace(undefined >= (-1)); + +trace("//undefined >= (-0)"); +trace(undefined >= (-0)); + +trace("//undefined >= 0"); +trace(undefined >= 0); + +trace("//undefined >= 1"); +trace(undefined >= 1); + +trace("//undefined >= 2"); +trace(undefined >= 2); + +trace("//undefined >= 5"); +trace(undefined >= 5); + +trace("//undefined >= \"abc\""); +trace(undefined >= "abc"); + +trace("//undefined >= \"2\""); +trace(undefined >= "2"); + +trace("//undefined >= \"true\""); +trace(undefined >= "true"); + +trace("//undefined >= \"false\""); +trace(undefined >= "false"); + +trace("//undefined >= true"); +trace(undefined >= true); + +trace("//undefined >= false"); +trace(undefined >= false); + +trace("//undefined >= NaN"); +trace(undefined >= NaN); + +trace("//null >= undefined"); +trace(null >= undefined); + +trace("//null >= null"); +trace(null >= null); + +trace("//null >= (-5)"); +trace(null >= (-5)); + +trace("//null >= (-1)"); +trace(null >= (-1)); + +trace("//null >= (-0)"); +trace(null >= (-0)); + +trace("//null >= 0"); +trace(null >= 0); + +trace("//null >= 1"); +trace(null >= 1); + +trace("//null >= 2"); +trace(null >= 2); + +trace("//null >= 5"); +trace(null >= 5); + +trace("//null >= \"abc\""); +trace(null >= "abc"); + +trace("//null >= \"2\""); +trace(null >= "2"); + +trace("//null >= \"true\""); +trace(null >= "true"); + +trace("//null >= \"false\""); +trace(null >= "false"); + +trace("//null >= true"); +trace(null >= true); + +trace("//null >= false"); +trace(null >= false); + +trace("//null >= NaN"); +trace(null >= NaN); + +trace("//(-5) >= undefined"); +trace((-5) >= undefined); + +trace("//(-5) >= null"); +trace((-5) >= null); + +trace("//(-5) >= (-5)"); +trace((-5) >= (-5)); + +trace("//(-5) >= (-1)"); +trace((-5) >= (-1)); + +trace("//(-5) >= (-0)"); +trace((-5) >= (-0)); + +trace("//(-5) >= 0"); +trace((-5) >= 0); + +trace("//(-5) >= 1"); +trace((-5) >= 1); + +trace("//(-5) >= 2"); +trace((-5) >= 2); + +trace("//(-5) >= 5"); +trace((-5) >= 5); + +trace("//(-5) >= \"abc\""); +trace((-5) >= "abc"); + +trace("//(-5) >= \"2\""); +trace((-5) >= "2"); + +trace("//(-5) >= \"true\""); +trace((-5) >= "true"); + +trace("//(-5) >= \"false\""); +trace((-5) >= "false"); + +trace("//(-5) >= true"); +trace((-5) >= true); + +trace("//(-5) >= false"); +trace((-5) >= false); + +trace("//(-5) >= NaN"); +trace((-5) >= NaN); + +trace("//(-1) >= undefined"); +trace((-1) >= undefined); + +trace("//(-1) >= null"); +trace((-1) >= null); + +trace("//(-1) >= (-5)"); +trace((-1) >= (-5)); + +trace("//(-1) >= (-1)"); +trace((-1) >= (-1)); + +trace("//(-1) >= (-0)"); +trace((-1) >= (-0)); + +trace("//(-1) >= 0"); +trace((-1) >= 0); + +trace("//(-1) >= 1"); +trace((-1) >= 1); + +trace("//(-1) >= 2"); +trace((-1) >= 2); + +trace("//(-1) >= 5"); +trace((-1) >= 5); + +trace("//(-1) >= \"abc\""); +trace((-1) >= "abc"); + +trace("//(-1) >= \"2\""); +trace((-1) >= "2"); + +trace("//(-1) >= \"true\""); +trace((-1) >= "true"); + +trace("//(-1) >= \"false\""); +trace((-1) >= "false"); + +trace("//(-1) >= true"); +trace((-1) >= true); + +trace("//(-1) >= false"); +trace((-1) >= false); + +trace("//(-1) >= NaN"); +trace((-1) >= NaN); + +trace("//(-0) >= undefined"); +trace((-0) >= undefined); + +trace("//(-0) >= null"); +trace((-0) >= null); + +trace("//(-0) >= (-5)"); +trace((-0) >= (-5)); + +trace("//(-0) >= (-1)"); +trace((-0) >= (-1)); + +trace("//(-0) >= (-0)"); +trace((-0) >= (-0)); + +trace("//(-0) >= 0"); +trace((-0) >= 0); + +trace("//(-0) >= 1"); +trace((-0) >= 1); + +trace("//(-0) >= 2"); +trace((-0) >= 2); + +trace("//(-0) >= 5"); +trace((-0) >= 5); + +trace("//(-0) >= \"abc\""); +trace((-0) >= "abc"); + +trace("//(-0) >= \"2\""); +trace((-0) >= "2"); + +trace("//(-0) >= \"true\""); +trace((-0) >= "true"); + +trace("//(-0) >= \"false\""); +trace((-0) >= "false"); + +trace("//(-0) >= true"); +trace((-0) >= true); + +trace("//(-0) >= false"); +trace((-0) >= false); + +trace("//(-0) >= NaN"); +trace((-0) >= NaN); + +trace("//0 >= undefined"); +trace(0 >= undefined); + +trace("//0 >= null"); +trace(0 >= null); + +trace("//0 >= (-5)"); +trace(0 >= (-5)); + +trace("//0 >= (-1)"); +trace(0 >= (-1)); + +trace("//0 >= (-0)"); +trace(0 >= (-0)); + +trace("//0 >= 0"); +trace(0 >= 0); + +trace("//0 >= 1"); +trace(0 >= 1); + +trace("//0 >= 2"); +trace(0 >= 2); + +trace("//0 >= 5"); +trace(0 >= 5); + +trace("//0 >= \"abc\""); +trace(0 >= "abc"); + +trace("//0 >= \"2\""); +trace(0 >= "2"); + +trace("//0 >= \"true\""); +trace(0 >= "true"); + +trace("//0 >= \"false\""); +trace(0 >= "false"); + +trace("//0 >= true"); +trace(0 >= true); + +trace("//0 >= false"); +trace(0 >= false); + +trace("//0 >= NaN"); +trace(0 >= NaN); + +trace("//1 >= undefined"); +trace(1 >= undefined); + +trace("//1 >= null"); +trace(1 >= null); + +trace("//1 >= (-5)"); +trace(1 >= (-5)); + +trace("//1 >= (-1)"); +trace(1 >= (-1)); + +trace("//1 >= (-0)"); +trace(1 >= (-0)); + +trace("//1 >= 0"); +trace(1 >= 0); + +trace("//1 >= 1"); +trace(1 >= 1); + +trace("//1 >= 2"); +trace(1 >= 2); + +trace("//1 >= 5"); +trace(1 >= 5); + +trace("//1 >= \"abc\""); +trace(1 >= "abc"); + +trace("//1 >= \"2\""); +trace(1 >= "2"); + +trace("//1 >= \"true\""); +trace(1 >= "true"); + +trace("//1 >= \"false\""); +trace(1 >= "false"); + +trace("//1 >= true"); +trace(1 >= true); + +trace("//1 >= false"); +trace(1 >= false); + +trace("//1 >= NaN"); +trace(1 >= NaN); + +trace("//2 >= undefined"); +trace(2 >= undefined); + +trace("//2 >= null"); +trace(2 >= null); + +trace("//2 >= (-5)"); +trace(2 >= (-5)); + +trace("//2 >= (-1)"); +trace(2 >= (-1)); + +trace("//2 >= (-0)"); +trace(2 >= (-0)); + +trace("//2 >= 0"); +trace(2 >= 0); + +trace("//2 >= 1"); +trace(2 >= 1); + +trace("//2 >= 2"); +trace(2 >= 2); + +trace("//2 >= 5"); +trace(2 >= 5); + +trace("//2 >= \"abc\""); +trace(2 >= "abc"); + +trace("//2 >= \"2\""); +trace(2 >= "2"); + +trace("//2 >= \"true\""); +trace(2 >= "true"); + +trace("//2 >= \"false\""); +trace(2 >= "false"); + +trace("//2 >= true"); +trace(2 >= true); + +trace("//2 >= false"); +trace(2 >= false); + +trace("//2 >= NaN"); +trace(2 >= NaN); + +trace("//5 >= undefined"); +trace(5 >= undefined); + +trace("//5 >= null"); +trace(5 >= null); + +trace("//5 >= (-5)"); +trace(5 >= (-5)); + +trace("//5 >= (-1)"); +trace(5 >= (-1)); + +trace("//5 >= (-0)"); +trace(5 >= (-0)); + +trace("//5 >= 0"); +trace(5 >= 0); + +trace("//5 >= 1"); +trace(5 >= 1); + +trace("//5 >= 2"); +trace(5 >= 2); + +trace("//5 >= 5"); +trace(5 >= 5); + +trace("//5 >= \"abc\""); +trace(5 >= "abc"); + +trace("//5 >= \"2\""); +trace(5 >= "2"); + +trace("//5 >= \"true\""); +trace(5 >= "true"); + +trace("//5 >= \"false\""); +trace(5 >= "false"); + +trace("//5 >= true"); +trace(5 >= true); + +trace("//5 >= false"); +trace(5 >= false); + +trace("//5 >= NaN"); +trace(5 >= NaN); + +trace("//\"abc\" >= undefined"); +trace("abc" >= undefined); + +trace("//\"abc\" >= null"); +trace("abc" >= null); + +trace("//\"abc\" >= (-5)"); +trace("abc" >= (-5)); + +trace("//\"abc\" >= (-1)"); +trace("abc" >= (-1)); + +trace("//\"abc\" >= (-0)"); +trace("abc" >= (-0)); + +trace("//\"abc\" >= 0"); +trace("abc" >= 0); + +trace("//\"abc\" >= 1"); +trace("abc" >= 1); + +trace("//\"abc\" >= 2"); +trace("abc" >= 2); + +trace("//\"abc\" >= 5"); +trace("abc" >= 5); + +trace("//\"abc\" >= \"abc\""); +trace("abc" >= "abc"); + +trace("//\"abc\" >= \"2\""); +trace("abc" >= "2"); + +trace("//\"abc\" >= \"true\""); +trace("abc" >= "true"); + +trace("//\"abc\" >= \"false\""); +trace("abc" >= "false"); + +trace("//\"abc\" >= true"); +trace("abc" >= true); + +trace("//\"abc\" >= false"); +trace("abc" >= false); + +trace("//\"abc\" >= NaN"); +trace("abc" >= NaN); + +trace("//\"2\" >= undefined"); +trace("2" >= undefined); + +trace("//\"2\" >= null"); +trace("2" >= null); + +trace("//\"2\" >= (-5)"); +trace("2" >= (-5)); + +trace("//\"2\" >= (-1)"); +trace("2" >= (-1)); + +trace("//\"2\" >= (-0)"); +trace("2" >= (-0)); + +trace("//\"2\" >= 0"); +trace("2" >= 0); + +trace("//\"2\" >= 1"); +trace("2" >= 1); + +trace("//\"2\" >= 2"); +trace("2" >= 2); + +trace("//\"2\" >= 5"); +trace("2" >= 5); + +trace("//\"2\" >= \"abc\""); +trace("2" >= "abc"); + +trace("//\"2\" >= \"2\""); +trace("2" >= "2"); + +trace("//\"2\" >= \"true\""); +trace("2" >= "true"); + +trace("//\"2\" >= \"false\""); +trace("2" >= "false"); + +trace("//\"2\" >= true"); +trace("2" >= true); + +trace("//\"2\" >= false"); +trace("2" >= false); + +trace("//\"2\" >= NaN"); +trace("2" >= NaN); + +trace("//\"true\" >= undefined"); +trace("true" >= undefined); + +trace("//\"true\" >= null"); +trace("true" >= null); + +trace("//\"true\" >= (-5)"); +trace("true" >= (-5)); + +trace("//\"true\" >= (-1)"); +trace("true" >= (-1)); + +trace("//\"true\" >= (-0)"); +trace("true" >= (-0)); + +trace("//\"true\" >= 0"); +trace("true" >= 0); + +trace("//\"true\" >= 1"); +trace("true" >= 1); + +trace("//\"true\" >= 2"); +trace("true" >= 2); + +trace("//\"true\" >= 5"); +trace("true" >= 5); + +trace("//\"true\" >= \"abc\""); +trace("true" >= "abc"); + +trace("//\"true\" >= \"2\""); +trace("true" >= "2"); + +trace("//\"true\" >= \"true\""); +trace("true" >= "true"); + +trace("//\"true\" >= \"false\""); +trace("true" >= "false"); + +trace("//\"true\" >= true"); +trace("true" >= true); + +trace("//\"true\" >= false"); +trace("true" >= false); + +trace("//\"true\" >= NaN"); +trace("true" >= NaN); + +trace("//\"false\" >= undefined"); +trace("false" >= undefined); + +trace("//\"false\" >= null"); +trace("false" >= null); + +trace("//\"false\" >= (-5)"); +trace("false" >= (-5)); + +trace("//\"false\" >= (-1)"); +trace("false" >= (-1)); + +trace("//\"false\" >= (-0)"); +trace("false" >= (-0)); + +trace("//\"false\" >= 0"); +trace("false" >= 0); + +trace("//\"false\" >= 1"); +trace("false" >= 1); + +trace("//\"false\" >= 2"); +trace("false" >= 2); + +trace("//\"false\" >= 5"); +trace("false" >= 5); + +trace("//\"false\" >= \"abc\""); +trace("false" >= "abc"); + +trace("//\"false\" >= \"2\""); +trace("false" >= "2"); + +trace("//\"false\" >= \"true\""); +trace("false" >= "true"); + +trace("//\"false\" >= \"false\""); +trace("false" >= "false"); + +trace("//\"false\" >= true"); +trace("false" >= true); + +trace("//\"false\" >= false"); +trace("false" >= false); + +trace("//\"false\" >= NaN"); +trace("false" >= NaN); + +trace("//true >= undefined"); +trace(true >= undefined); + +trace("//true >= null"); +trace(true >= null); + +trace("//true >= (-5)"); +trace(true >= (-5)); + +trace("//true >= (-1)"); +trace(true >= (-1)); + +trace("//true >= (-0)"); +trace(true >= (-0)); + +trace("//true >= 0"); +trace(true >= 0); + +trace("//true >= 1"); +trace(true >= 1); + +trace("//true >= 2"); +trace(true >= 2); + +trace("//true >= 5"); +trace(true >= 5); + +trace("//true >= \"abc\""); +trace(true >= "abc"); + +trace("//true >= \"2\""); +trace(true >= "2"); + +trace("//true >= \"true\""); +trace(true >= "true"); + +trace("//true >= \"false\""); +trace(true >= "false"); + +trace("//true >= true"); +trace(true >= true); + +trace("//true >= false"); +trace(true >= false); + +trace("//true >= NaN"); +trace(true >= NaN); + +trace("//false >= undefined"); +trace(false >= undefined); + +trace("//false >= null"); +trace(false >= null); + +trace("//false >= (-5)"); +trace(false >= (-5)); + +trace("//false >= (-1)"); +trace(false >= (-1)); + +trace("//false >= (-0)"); +trace(false >= (-0)); + +trace("//false >= 0"); +trace(false >= 0); + +trace("//false >= 1"); +trace(false >= 1); + +trace("//false >= 2"); +trace(false >= 2); + +trace("//false >= 5"); +trace(false >= 5); + +trace("//false >= \"abc\""); +trace(false >= "abc"); + +trace("//false >= \"2\""); +trace(false >= "2"); + +trace("//false >= \"true\""); +trace(false >= "true"); + +trace("//false >= \"false\""); +trace(false >= "false"); + +trace("//false >= true"); +trace(false >= true); + +trace("//false >= false"); +trace(false >= false); + +trace("//false >= NaN"); +trace(false >= NaN); + +trace("//NaN >= undefined"); +trace(NaN >= undefined); + +trace("//NaN >= null"); +trace(NaN >= null); + +trace("//NaN >= (-5)"); +trace(NaN >= (-5)); + +trace("//NaN >= (-1)"); +trace(NaN >= (-1)); + +trace("//NaN >= (-0)"); +trace(NaN >= (-0)); + +trace("//NaN >= 0"); +trace(NaN >= 0); + +trace("//NaN >= 1"); +trace(NaN >= 1); + +trace("//NaN >= 2"); +trace(NaN >= 2); + +trace("//NaN >= 5"); +trace(NaN >= 5); + +trace("//NaN >= \"abc\""); +trace(NaN >= "abc"); + +trace("//NaN >= \"2\""); +trace(NaN >= "2"); + +trace("//NaN >= \"true\""); +trace(NaN >= "true"); + +trace("//NaN >= \"false\""); +trace(NaN >= "false"); + +trace("//NaN >= true"); +trace(NaN >= true); + +trace("//NaN >= false"); +trace(NaN >= false); + +trace("//NaN >= NaN"); +trace(NaN >= NaN); \ No newline at end of file diff --git a/core/tests/swfs/avm2/greaterequals/output.txt b/core/tests/swfs/avm2/greaterequals/output.txt new file mode 100644 index 000000000..22476cb29 --- /dev/null +++ b/core/tests/swfs/avm2/greaterequals/output.txt @@ -0,0 +1,512 @@ +//undefined >= undefined +false +//undefined >= null +false +//undefined >= (-5) +false +//undefined >= (-1) +false +//undefined >= (-0) +false +//undefined >= 0 +false +//undefined >= 1 +false +//undefined >= 2 +false +//undefined >= 5 +false +//undefined >= "abc" +false +//undefined >= "2" +false +//undefined >= "true" +false +//undefined >= "false" +false +//undefined >= true +false +//undefined >= false +false +//undefined >= NaN +false +//null >= undefined +false +//null >= null +true +//null >= (-5) +true +//null >= (-1) +true +//null >= (-0) +true +//null >= 0 +true +//null >= 1 +false +//null >= 2 +false +//null >= 5 +false +//null >= "abc" +false +//null >= "2" +false +//null >= "true" +false +//null >= "false" +false +//null >= true +false +//null >= false +true +//null >= NaN +false +//(-5) >= undefined +false +//(-5) >= null +false +//(-5) >= (-5) +true +//(-5) >= (-1) +false +//(-5) >= (-0) +false +//(-5) >= 0 +false +//(-5) >= 1 +false +//(-5) >= 2 +false +//(-5) >= 5 +false +//(-5) >= "abc" +false +//(-5) >= "2" +false +//(-5) >= "true" +false +//(-5) >= "false" +false +//(-5) >= true +false +//(-5) >= false +false +//(-5) >= NaN +false +//(-1) >= undefined +false +//(-1) >= null +false +//(-1) >= (-5) +true +//(-1) >= (-1) +true +//(-1) >= (-0) +false +//(-1) >= 0 +false +//(-1) >= 1 +false +//(-1) >= 2 +false +//(-1) >= 5 +false +//(-1) >= "abc" +false +//(-1) >= "2" +false +//(-1) >= "true" +false +//(-1) >= "false" +false +//(-1) >= true +false +//(-1) >= false +false +//(-1) >= NaN +false +//(-0) >= undefined +false +//(-0) >= null +true +//(-0) >= (-5) +true +//(-0) >= (-1) +true +//(-0) >= (-0) +true +//(-0) >= 0 +true +//(-0) >= 1 +false +//(-0) >= 2 +false +//(-0) >= 5 +false +//(-0) >= "abc" +false +//(-0) >= "2" +false +//(-0) >= "true" +false +//(-0) >= "false" +false +//(-0) >= true +false +//(-0) >= false +true +//(-0) >= NaN +false +//0 >= undefined +false +//0 >= null +true +//0 >= (-5) +true +//0 >= (-1) +true +//0 >= (-0) +true +//0 >= 0 +true +//0 >= 1 +false +//0 >= 2 +false +//0 >= 5 +false +//0 >= "abc" +false +//0 >= "2" +false +//0 >= "true" +false +//0 >= "false" +false +//0 >= true +false +//0 >= false +true +//0 >= NaN +false +//1 >= undefined +false +//1 >= null +true +//1 >= (-5) +true +//1 >= (-1) +true +//1 >= (-0) +true +//1 >= 0 +true +//1 >= 1 +true +//1 >= 2 +false +//1 >= 5 +false +//1 >= "abc" +false +//1 >= "2" +false +//1 >= "true" +false +//1 >= "false" +false +//1 >= true +true +//1 >= false +true +//1 >= NaN +false +//2 >= undefined +false +//2 >= null +true +//2 >= (-5) +true +//2 >= (-1) +true +//2 >= (-0) +true +//2 >= 0 +true +//2 >= 1 +true +//2 >= 2 +true +//2 >= 5 +false +//2 >= "abc" +false +//2 >= "2" +true +//2 >= "true" +false +//2 >= "false" +false +//2 >= true +true +//2 >= false +true +//2 >= NaN +false +//5 >= undefined +false +//5 >= null +true +//5 >= (-5) +true +//5 >= (-1) +true +//5 >= (-0) +true +//5 >= 0 +true +//5 >= 1 +true +//5 >= 2 +true +//5 >= 5 +true +//5 >= "abc" +false +//5 >= "2" +true +//5 >= "true" +false +//5 >= "false" +false +//5 >= true +true +//5 >= false +true +//5 >= NaN +false +//"abc" >= undefined +false +//"abc" >= null +false +//"abc" >= (-5) +false +//"abc" >= (-1) +false +//"abc" >= (-0) +false +//"abc" >= 0 +false +//"abc" >= 1 +false +//"abc" >= 2 +false +//"abc" >= 5 +false +//"abc" >= "abc" +true +//"abc" >= "2" +true +//"abc" >= "true" +false +//"abc" >= "false" +false +//"abc" >= true +false +//"abc" >= false +false +//"abc" >= NaN +false +//"2" >= undefined +false +//"2" >= null +true +//"2" >= (-5) +true +//"2" >= (-1) +true +//"2" >= (-0) +true +//"2" >= 0 +true +//"2" >= 1 +true +//"2" >= 2 +true +//"2" >= 5 +false +//"2" >= "abc" +false +//"2" >= "2" +true +//"2" >= "true" +false +//"2" >= "false" +false +//"2" >= true +true +//"2" >= false +true +//"2" >= NaN +false +//"true" >= undefined +false +//"true" >= null +false +//"true" >= (-5) +false +//"true" >= (-1) +false +//"true" >= (-0) +false +//"true" >= 0 +false +//"true" >= 1 +false +//"true" >= 2 +false +//"true" >= 5 +false +//"true" >= "abc" +true +//"true" >= "2" +true +//"true" >= "true" +true +//"true" >= "false" +true +//"true" >= true +false +//"true" >= false +false +//"true" >= NaN +false +//"false" >= undefined +false +//"false" >= null +false +//"false" >= (-5) +false +//"false" >= (-1) +false +//"false" >= (-0) +false +//"false" >= 0 +false +//"false" >= 1 +false +//"false" >= 2 +false +//"false" >= 5 +false +//"false" >= "abc" +true +//"false" >= "2" +true +//"false" >= "true" +false +//"false" >= "false" +true +//"false" >= true +false +//"false" >= false +false +//"false" >= NaN +false +//true >= undefined +false +//true >= null +true +//true >= (-5) +true +//true >= (-1) +true +//true >= (-0) +true +//true >= 0 +true +//true >= 1 +true +//true >= 2 +false +//true >= 5 +false +//true >= "abc" +false +//true >= "2" +false +//true >= "true" +false +//true >= "false" +false +//true >= true +true +//true >= false +true +//true >= NaN +false +//false >= undefined +false +//false >= null +true +//false >= (-5) +true +//false >= (-1) +true +//false >= (-0) +true +//false >= 0 +true +//false >= 1 +false +//false >= 2 +false +//false >= 5 +false +//false >= "abc" +false +//false >= "2" +false +//false >= "true" +false +//false >= "false" +false +//false >= true +false +//false >= false +true +//false >= NaN +false +//NaN >= undefined +false +//NaN >= null +false +//NaN >= (-5) +false +//NaN >= (-1) +false +//NaN >= (-0) +false +//NaN >= 0 +false +//NaN >= 1 +false +//NaN >= 2 +false +//NaN >= 5 +false +//NaN >= "abc" +false +//NaN >= "2" +false +//NaN >= "true" +false +//NaN >= "false" +false +//NaN >= true +false +//NaN >= false +false +//NaN >= NaN +false diff --git a/core/tests/swfs/avm2/greaterequals/test.fla b/core/tests/swfs/avm2/greaterequals/test.fla new file mode 100644 index 0000000000000000000000000000000000000000..bbbf05379d9a0f5b17213c2debc83d0b5adf3174 GIT binary patch literal 3983 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 literal 0 HcmV?d00001 diff --git a/core/tests/swfs/avm2/greaterequals/test.swf b/core/tests/swfs/avm2/greaterequals/test.swf new file mode 100644 index 0000000000000000000000000000000000000000..6f7c222a2e3866e88b810c84a6cd322d4cd8e9c4 GIT binary patch literal 4168 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 P+j41H$o;oc3?}{u_^`e< literal 0 HcmV?d00001 diff --git a/core/tests/swfs/avm2/greaterthan/Test.as b/core/tests/swfs/avm2/greaterthan/Test.as new file mode 100644 index 000000000..44e282bca --- /dev/null +++ b/core/tests/swfs/avm2/greaterthan/Test.as @@ -0,0 +1,773 @@ +package { + public class Test {} +} + +/// undefined, null, -5, -1, -0, 0, 1, 2, 5, "abc", "2", "true", "false", true, false, NaN + +trace("//undefined > undefined"); +trace(undefined > undefined); + +trace("//undefined > null"); +trace(undefined > null); + +trace("//undefined > (-5)"); +trace(undefined > (-5)); + +trace("//undefined > (-1)"); +trace(undefined > (-1)); + +trace("//undefined > (-0)"); +trace(undefined > (-0)); + +trace("//undefined > 0"); +trace(undefined > 0); + +trace("//undefined > 1"); +trace(undefined > 1); + +trace("//undefined > 2"); +trace(undefined > 2); + +trace("//undefined > 5"); +trace(undefined > 5); + +trace("//undefined > \"abc\""); +trace(undefined > "abc"); + +trace("//undefined > \"2\""); +trace(undefined > "2"); + +trace("//undefined > \"true\""); +trace(undefined > "true"); + +trace("//undefined > \"false\""); +trace(undefined > "false"); + +trace("//undefined > true"); +trace(undefined > true); + +trace("//undefined > false"); +trace(undefined > false); + +trace("//undefined > NaN"); +trace(undefined > NaN); + +trace("//null > undefined"); +trace(null > undefined); + +trace("//null > null"); +trace(null > null); + +trace("//null > (-5)"); +trace(null > (-5)); + +trace("//null > (-1)"); +trace(null > (-1)); + +trace("//null > (-0)"); +trace(null > (-0)); + +trace("//null > 0"); +trace(null > 0); + +trace("//null > 1"); +trace(null > 1); + +trace("//null > 2"); +trace(null > 2); + +trace("//null > 5"); +trace(null > 5); + +trace("//null > \"abc\""); +trace(null > "abc"); + +trace("//null > \"2\""); +trace(null > "2"); + +trace("//null > \"true\""); +trace(null > "true"); + +trace("//null > \"false\""); +trace(null > "false"); + +trace("//null > true"); +trace(null > true); + +trace("//null > false"); +trace(null > false); + +trace("//null > NaN"); +trace(null > NaN); + +trace("//(-5) > undefined"); +trace((-5) > undefined); + +trace("//(-5) > null"); +trace((-5) > null); + +trace("//(-5) > (-5)"); +trace((-5) > (-5)); + +trace("//(-5) > (-1)"); +trace((-5) > (-1)); + +trace("//(-5) > (-0)"); +trace((-5) > (-0)); + +trace("//(-5) > 0"); +trace((-5) > 0); + +trace("//(-5) > 1"); +trace((-5) > 1); + +trace("//(-5) > 2"); +trace((-5) > 2); + +trace("//(-5) > 5"); +trace((-5) > 5); + +trace("//(-5) > \"abc\""); +trace((-5) > "abc"); + +trace("//(-5) > \"2\""); +trace((-5) > "2"); + +trace("//(-5) > \"true\""); +trace((-5) > "true"); + +trace("//(-5) > \"false\""); +trace((-5) > "false"); + +trace("//(-5) > true"); +trace((-5) > true); + +trace("//(-5) > false"); +trace((-5) > false); + +trace("//(-5) > NaN"); +trace((-5) > NaN); + +trace("//(-1) > undefined"); +trace((-1) > undefined); + +trace("//(-1) > null"); +trace((-1) > null); + +trace("//(-1) > (-5)"); +trace((-1) > (-5)); + +trace("//(-1) > (-1)"); +trace((-1) > (-1)); + +trace("//(-1) > (-0)"); +trace((-1) > (-0)); + +trace("//(-1) > 0"); +trace((-1) > 0); + +trace("//(-1) > 1"); +trace((-1) > 1); + +trace("//(-1) > 2"); +trace((-1) > 2); + +trace("//(-1) > 5"); +trace((-1) > 5); + +trace("//(-1) > \"abc\""); +trace((-1) > "abc"); + +trace("//(-1) > \"2\""); +trace((-1) > "2"); + +trace("//(-1) > \"true\""); +trace((-1) > "true"); + +trace("//(-1) > \"false\""); +trace((-1) > "false"); + +trace("//(-1) > true"); +trace((-1) > true); + +trace("//(-1) > false"); +trace((-1) > false); + +trace("//(-1) > NaN"); +trace((-1) > NaN); + +trace("//(-0) > undefined"); +trace((-0) > undefined); + +trace("//(-0) > null"); +trace((-0) > null); + +trace("//(-0) > (-5)"); +trace((-0) > (-5)); + +trace("//(-0) > (-1)"); +trace((-0) > (-1)); + +trace("//(-0) > (-0)"); +trace((-0) > (-0)); + +trace("//(-0) > 0"); +trace((-0) > 0); + +trace("//(-0) > 1"); +trace((-0) > 1); + +trace("//(-0) > 2"); +trace((-0) > 2); + +trace("//(-0) > 5"); +trace((-0) > 5); + +trace("//(-0) > \"abc\""); +trace((-0) > "abc"); + +trace("//(-0) > \"2\""); +trace((-0) > "2"); + +trace("//(-0) > \"true\""); +trace((-0) > "true"); + +trace("//(-0) > \"false\""); +trace((-0) > "false"); + +trace("//(-0) > true"); +trace((-0) > true); + +trace("//(-0) > false"); +trace((-0) > false); + +trace("//(-0) > NaN"); +trace((-0) > NaN); + +trace("//0 > undefined"); +trace(0 > undefined); + +trace("//0 > null"); +trace(0 > null); + +trace("//0 > (-5)"); +trace(0 > (-5)); + +trace("//0 > (-1)"); +trace(0 > (-1)); + +trace("//0 > (-0)"); +trace(0 > (-0)); + +trace("//0 > 0"); +trace(0 > 0); + +trace("//0 > 1"); +trace(0 > 1); + +trace("//0 > 2"); +trace(0 > 2); + +trace("//0 > 5"); +trace(0 > 5); + +trace("//0 > \"abc\""); +trace(0 > "abc"); + +trace("//0 > \"2\""); +trace(0 > "2"); + +trace("//0 > \"true\""); +trace(0 > "true"); + +trace("//0 > \"false\""); +trace(0 > "false"); + +trace("//0 > true"); +trace(0 > true); + +trace("//0 > false"); +trace(0 > false); + +trace("//0 > NaN"); +trace(0 > NaN); + +trace("//1 > undefined"); +trace(1 > undefined); + +trace("//1 > null"); +trace(1 > null); + +trace("//1 > (-5)"); +trace(1 > (-5)); + +trace("//1 > (-1)"); +trace(1 > (-1)); + +trace("//1 > (-0)"); +trace(1 > (-0)); + +trace("//1 > 0"); +trace(1 > 0); + +trace("//1 > 1"); +trace(1 > 1); + +trace("//1 > 2"); +trace(1 > 2); + +trace("//1 > 5"); +trace(1 > 5); + +trace("//1 > \"abc\""); +trace(1 > "abc"); + +trace("//1 > \"2\""); +trace(1 > "2"); + +trace("//1 > \"true\""); +trace(1 > "true"); + +trace("//1 > \"false\""); +trace(1 > "false"); + +trace("//1 > true"); +trace(1 > true); + +trace("//1 > false"); +trace(1 > false); + +trace("//1 > NaN"); +trace(1 > NaN); + +trace("//2 > undefined"); +trace(2 > undefined); + +trace("//2 > null"); +trace(2 > null); + +trace("//2 > (-5)"); +trace(2 > (-5)); + +trace("//2 > (-1)"); +trace(2 > (-1)); + +trace("//2 > (-0)"); +trace(2 > (-0)); + +trace("//2 > 0"); +trace(2 > 0); + +trace("//2 > 1"); +trace(2 > 1); + +trace("//2 > 2"); +trace(2 > 2); + +trace("//2 > 5"); +trace(2 > 5); + +trace("//2 > \"abc\""); +trace(2 > "abc"); + +trace("//2 > \"2\""); +trace(2 > "2"); + +trace("//2 > \"true\""); +trace(2 > "true"); + +trace("//2 > \"false\""); +trace(2 > "false"); + +trace("//2 > true"); +trace(2 > true); + +trace("//2 > false"); +trace(2 > false); + +trace("//2 > NaN"); +trace(2 > NaN); + +trace("//5 > undefined"); +trace(5 > undefined); + +trace("//5 > null"); +trace(5 > null); + +trace("//5 > (-5)"); +trace(5 > (-5)); + +trace("//5 > (-1)"); +trace(5 > (-1)); + +trace("//5 > (-0)"); +trace(5 > (-0)); + +trace("//5 > 0"); +trace(5 > 0); + +trace("//5 > 1"); +trace(5 > 1); + +trace("//5 > 2"); +trace(5 > 2); + +trace("//5 > 5"); +trace(5 > 5); + +trace("//5 > \"abc\""); +trace(5 > "abc"); + +trace("//5 > \"2\""); +trace(5 > "2"); + +trace("//5 > \"true\""); +trace(5 > "true"); + +trace("//5 > \"false\""); +trace(5 > "false"); + +trace("//5 > true"); +trace(5 > true); + +trace("//5 > false"); +trace(5 > false); + +trace("//5 > NaN"); +trace(5 > NaN); + +trace("//\"abc\" > undefined"); +trace("abc" > undefined); + +trace("//\"abc\" > null"); +trace("abc" > null); + +trace("//\"abc\" > (-5)"); +trace("abc" > (-5)); + +trace("//\"abc\" > (-1)"); +trace("abc" > (-1)); + +trace("//\"abc\" > (-0)"); +trace("abc" > (-0)); + +trace("//\"abc\" > 0"); +trace("abc" > 0); + +trace("//\"abc\" > 1"); +trace("abc" > 1); + +trace("//\"abc\" > 2"); +trace("abc" > 2); + +trace("//\"abc\" > 5"); +trace("abc" > 5); + +trace("//\"abc\" > \"abc\""); +trace("abc" > "abc"); + +trace("//\"abc\" > \"2\""); +trace("abc" > "2"); + +trace("//\"abc\" > \"true\""); +trace("abc" > "true"); + +trace("//\"abc\" > \"false\""); +trace("abc" > "false"); + +trace("//\"abc\" > true"); +trace("abc" > true); + +trace("//\"abc\" > false"); +trace("abc" > false); + +trace("//\"abc\" > NaN"); +trace("abc" > NaN); + +trace("//\"2\" > undefined"); +trace("2" > undefined); + +trace("//\"2\" > null"); +trace("2" > null); + +trace("//\"2\" > (-5)"); +trace("2" > (-5)); + +trace("//\"2\" > (-1)"); +trace("2" > (-1)); + +trace("//\"2\" > (-0)"); +trace("2" > (-0)); + +trace("//\"2\" > 0"); +trace("2" > 0); + +trace("//\"2\" > 1"); +trace("2" > 1); + +trace("//\"2\" > 2"); +trace("2" > 2); + +trace("//\"2\" > 5"); +trace("2" > 5); + +trace("//\"2\" > \"abc\""); +trace("2" > "abc"); + +trace("//\"2\" > \"2\""); +trace("2" > "2"); + +trace("//\"2\" > \"true\""); +trace("2" > "true"); + +trace("//\"2\" > \"false\""); +trace("2" > "false"); + +trace("//\"2\" > true"); +trace("2" > true); + +trace("//\"2\" > false"); +trace("2" > false); + +trace("//\"2\" > NaN"); +trace("2" > NaN); + +trace("//\"true\" > undefined"); +trace("true" > undefined); + +trace("//\"true\" > null"); +trace("true" > null); + +trace("//\"true\" > (-5)"); +trace("true" > (-5)); + +trace("//\"true\" > (-1)"); +trace("true" > (-1)); + +trace("//\"true\" > (-0)"); +trace("true" > (-0)); + +trace("//\"true\" > 0"); +trace("true" > 0); + +trace("//\"true\" > 1"); +trace("true" > 1); + +trace("//\"true\" > 2"); +trace("true" > 2); + +trace("//\"true\" > 5"); +trace("true" > 5); + +trace("//\"true\" > \"abc\""); +trace("true" > "abc"); + +trace("//\"true\" > \"2\""); +trace("true" > "2"); + +trace("//\"true\" > \"true\""); +trace("true" > "true"); + +trace("//\"true\" > \"false\""); +trace("true" > "false"); + +trace("//\"true\" > true"); +trace("true" > true); + +trace("//\"true\" > false"); +trace("true" > false); + +trace("//\"true\" > NaN"); +trace("true" > NaN); + +trace("//\"false\" > undefined"); +trace("false" > undefined); + +trace("//\"false\" > null"); +trace("false" > null); + +trace("//\"false\" > (-5)"); +trace("false" > (-5)); + +trace("//\"false\" > (-1)"); +trace("false" > (-1)); + +trace("//\"false\" > (-0)"); +trace("false" > (-0)); + +trace("//\"false\" > 0"); +trace("false" > 0); + +trace("//\"false\" > 1"); +trace("false" > 1); + +trace("//\"false\" > 2"); +trace("false" > 2); + +trace("//\"false\" > 5"); +trace("false" > 5); + +trace("//\"false\" > \"abc\""); +trace("false" > "abc"); + +trace("//\"false\" > \"2\""); +trace("false" > "2"); + +trace("//\"false\" > \"true\""); +trace("false" > "true"); + +trace("//\"false\" > \"false\""); +trace("false" > "false"); + +trace("//\"false\" > true"); +trace("false" > true); + +trace("//\"false\" > false"); +trace("false" > false); + +trace("//\"false\" > NaN"); +trace("false" > NaN); + +trace("//true > undefined"); +trace(true > undefined); + +trace("//true > null"); +trace(true > null); + +trace("//true > (-5)"); +trace(true > (-5)); + +trace("//true > (-1)"); +trace(true > (-1)); + +trace("//true > (-0)"); +trace(true > (-0)); + +trace("//true > 0"); +trace(true > 0); + +trace("//true > 1"); +trace(true > 1); + +trace("//true > 2"); +trace(true > 2); + +trace("//true > 5"); +trace(true > 5); + +trace("//true > \"abc\""); +trace(true > "abc"); + +trace("//true > \"2\""); +trace(true > "2"); + +trace("//true > \"true\""); +trace(true > "true"); + +trace("//true > \"false\""); +trace(true > "false"); + +trace("//true > true"); +trace(true > true); + +trace("//true > false"); +trace(true > false); + +trace("//true > NaN"); +trace(true > NaN); + +trace("//false > undefined"); +trace(false > undefined); + +trace("//false > null"); +trace(false > null); + +trace("//false > (-5)"); +trace(false > (-5)); + +trace("//false > (-1)"); +trace(false > (-1)); + +trace("//false > (-0)"); +trace(false > (-0)); + +trace("//false > 0"); +trace(false > 0); + +trace("//false > 1"); +trace(false > 1); + +trace("//false > 2"); +trace(false > 2); + +trace("//false > 5"); +trace(false > 5); + +trace("//false > \"abc\""); +trace(false > "abc"); + +trace("//false > \"2\""); +trace(false > "2"); + +trace("//false > \"true\""); +trace(false > "true"); + +trace("//false > \"false\""); +trace(false > "false"); + +trace("//false > true"); +trace(false > true); + +trace("//false > false"); +trace(false > false); + +trace("//false > NaN"); +trace(false > NaN); + +trace("//NaN > undefined"); +trace(NaN > undefined); + +trace("//NaN > null"); +trace(NaN > null); + +trace("//NaN > (-5)"); +trace(NaN > (-5)); + +trace("//NaN > (-1)"); +trace(NaN > (-1)); + +trace("//NaN > (-0)"); +trace(NaN > (-0)); + +trace("//NaN > 0"); +trace(NaN > 0); + +trace("//NaN > 1"); +trace(NaN > 1); + +trace("//NaN > 2"); +trace(NaN > 2); + +trace("//NaN > 5"); +trace(NaN > 5); + +trace("//NaN > \"abc\""); +trace(NaN > "abc"); + +trace("//NaN > \"2\""); +trace(NaN > "2"); + +trace("//NaN > \"true\""); +trace(NaN > "true"); + +trace("//NaN > \"false\""); +trace(NaN > "false"); + +trace("//NaN > true"); +trace(NaN > true); + +trace("//NaN > false"); +trace(NaN > false); + +trace("//NaN > NaN"); +trace(NaN > NaN); \ No newline at end of file diff --git a/core/tests/swfs/avm2/greaterthan/output.txt b/core/tests/swfs/avm2/greaterthan/output.txt new file mode 100644 index 000000000..a032fa966 --- /dev/null +++ b/core/tests/swfs/avm2/greaterthan/output.txt @@ -0,0 +1,512 @@ +//undefined > undefined +false +//undefined > null +false +//undefined > (-5) +false +//undefined > (-1) +false +//undefined > (-0) +false +//undefined > 0 +false +//undefined > 1 +false +//undefined > 2 +false +//undefined > 5 +false +//undefined > "abc" +false +//undefined > "2" +false +//undefined > "true" +false +//undefined > "false" +false +//undefined > true +false +//undefined > false +false +//undefined > NaN +false +//null > undefined +false +//null > null +false +//null > (-5) +true +//null > (-1) +true +//null > (-0) +false +//null > 0 +false +//null > 1 +false +//null > 2 +false +//null > 5 +false +//null > "abc" +false +//null > "2" +false +//null > "true" +false +//null > "false" +false +//null > true +false +//null > false +false +//null > NaN +false +//(-5) > undefined +false +//(-5) > null +false +//(-5) > (-5) +false +//(-5) > (-1) +false +//(-5) > (-0) +false +//(-5) > 0 +false +//(-5) > 1 +false +//(-5) > 2 +false +//(-5) > 5 +false +//(-5) > "abc" +false +//(-5) > "2" +false +//(-5) > "true" +false +//(-5) > "false" +false +//(-5) > true +false +//(-5) > false +false +//(-5) > NaN +false +//(-1) > undefined +false +//(-1) > null +false +//(-1) > (-5) +true +//(-1) > (-1) +false +//(-1) > (-0) +false +//(-1) > 0 +false +//(-1) > 1 +false +//(-1) > 2 +false +//(-1) > 5 +false +//(-1) > "abc" +false +//(-1) > "2" +false +//(-1) > "true" +false +//(-1) > "false" +false +//(-1) > true +false +//(-1) > false +false +//(-1) > NaN +false +//(-0) > undefined +false +//(-0) > null +false +//(-0) > (-5) +true +//(-0) > (-1) +true +//(-0) > (-0) +false +//(-0) > 0 +false +//(-0) > 1 +false +//(-0) > 2 +false +//(-0) > 5 +false +//(-0) > "abc" +false +//(-0) > "2" +false +//(-0) > "true" +false +//(-0) > "false" +false +//(-0) > true +false +//(-0) > false +false +//(-0) > NaN +false +//0 > undefined +false +//0 > null +false +//0 > (-5) +true +//0 > (-1) +true +//0 > (-0) +false +//0 > 0 +false +//0 > 1 +false +//0 > 2 +false +//0 > 5 +false +//0 > "abc" +false +//0 > "2" +false +//0 > "true" +false +//0 > "false" +false +//0 > true +false +//0 > false +false +//0 > NaN +false +//1 > undefined +false +//1 > null +true +//1 > (-5) +true +//1 > (-1) +true +//1 > (-0) +true +//1 > 0 +true +//1 > 1 +false +//1 > 2 +false +//1 > 5 +false +//1 > "abc" +false +//1 > "2" +false +//1 > "true" +false +//1 > "false" +false +//1 > true +false +//1 > false +true +//1 > NaN +false +//2 > undefined +false +//2 > null +true +//2 > (-5) +true +//2 > (-1) +true +//2 > (-0) +true +//2 > 0 +true +//2 > 1 +true +//2 > 2 +false +//2 > 5 +false +//2 > "abc" +false +//2 > "2" +false +//2 > "true" +false +//2 > "false" +false +//2 > true +true +//2 > false +true +//2 > NaN +false +//5 > undefined +false +//5 > null +true +//5 > (-5) +true +//5 > (-1) +true +//5 > (-0) +true +//5 > 0 +true +//5 > 1 +true +//5 > 2 +true +//5 > 5 +false +//5 > "abc" +false +//5 > "2" +true +//5 > "true" +false +//5 > "false" +false +//5 > true +true +//5 > false +true +//5 > NaN +false +//"abc" > undefined +false +//"abc" > null +false +//"abc" > (-5) +false +//"abc" > (-1) +false +//"abc" > (-0) +false +//"abc" > 0 +false +//"abc" > 1 +false +//"abc" > 2 +false +//"abc" > 5 +false +//"abc" > "abc" +false +//"abc" > "2" +true +//"abc" > "true" +false +//"abc" > "false" +false +//"abc" > true +false +//"abc" > false +false +//"abc" > NaN +false +//"2" > undefined +false +//"2" > null +true +//"2" > (-5) +true +//"2" > (-1) +true +//"2" > (-0) +true +//"2" > 0 +true +//"2" > 1 +true +//"2" > 2 +false +//"2" > 5 +false +//"2" > "abc" +false +//"2" > "2" +false +//"2" > "true" +false +//"2" > "false" +false +//"2" > true +true +//"2" > false +true +//"2" > NaN +false +//"true" > undefined +false +//"true" > null +false +//"true" > (-5) +false +//"true" > (-1) +false +//"true" > (-0) +false +//"true" > 0 +false +//"true" > 1 +false +//"true" > 2 +false +//"true" > 5 +false +//"true" > "abc" +true +//"true" > "2" +true +//"true" > "true" +false +//"true" > "false" +true +//"true" > true +false +//"true" > false +false +//"true" > NaN +false +//"false" > undefined +false +//"false" > null +false +//"false" > (-5) +false +//"false" > (-1) +false +//"false" > (-0) +false +//"false" > 0 +false +//"false" > 1 +false +//"false" > 2 +false +//"false" > 5 +false +//"false" > "abc" +true +//"false" > "2" +true +//"false" > "true" +false +//"false" > "false" +false +//"false" > true +false +//"false" > false +false +//"false" > NaN +false +//true > undefined +false +//true > null +true +//true > (-5) +true +//true > (-1) +true +//true > (-0) +true +//true > 0 +true +//true > 1 +false +//true > 2 +false +//true > 5 +false +//true > "abc" +false +//true > "2" +false +//true > "true" +false +//true > "false" +false +//true > true +false +//true > false +true +//true > NaN +false +//false > undefined +false +//false > null +false +//false > (-5) +true +//false > (-1) +true +//false > (-0) +false +//false > 0 +false +//false > 1 +false +//false > 2 +false +//false > 5 +false +//false > "abc" +false +//false > "2" +false +//false > "true" +false +//false > "false" +false +//false > true +false +//false > false +false +//false > NaN +false +//NaN > undefined +false +//NaN > null +false +//NaN > (-5) +false +//NaN > (-1) +false +//NaN > (-0) +false +//NaN > 0 +false +//NaN > 1 +false +//NaN > 2 +false +//NaN > 5 +false +//NaN > "abc" +false +//NaN > "2" +false +//NaN > "true" +false +//NaN > "false" +false +//NaN > true +false +//NaN > false +false +//NaN > NaN +false diff --git a/core/tests/swfs/avm2/greaterthan/test.fla b/core/tests/swfs/avm2/greaterthan/test.fla new file mode 100644 index 0000000000000000000000000000000000000000..bbbf05379d9a0f5b17213c2debc83d0b5adf3174 GIT binary patch literal 3983 zcmbtXc{o)28=sKIK6XNkv6r=ETqR=-iEKl*%os+^*v2~c2xCiGvM*7#(AX-3u`f}U zQe1^*O3HdI5&DhmR=4}y?mxfxJnx+IJ?H(r-}gD^edqanOblu1xBvhk0N`I{VIsuh zM9TmG0QQ`E3*e2ydCU1bV@ynqt*m9W%#=-j3a3VVx4rOl`kJONQ)~HON9`px(lLk0 z>YvyBk1%#>n1>GnE|EDHKHobwgK?bJ_Elr;btj7`rj}rH zvhXe58Zr-M2*B9|xhYZ#n`e(?DLj}kq)_mvNxz2CrI+KZB})486VF7Yb4f>~X)>JO znDi=$R~E5i%>>28W1+H=Vs|RZ7TT>4==FzE=1%O!t{IKPe&=|+2gE$aTC-NIy`yAH9=J#^?Qev5`L!>Ry9A>`am3Su?Mi(&ZjH8Vs7eol-tf$h zjOkAqzyJ}g8||bX;b_`mayhM<`C51}Y?9IZsY1ei(uqx^jzBa|Z7L4MjGf#V0N|Tv zHVfF=ak5E+iPtsOpiMb!6FDck+r%4t4~UWp&Tt_B0->oWLuFMZ6Vvgm z8dgB8tv-~jGHyS7&BQsY%;$a|ZLV*kK7nah>1@Om_QA%Ff3#)=jzQ(oy(B@!5PXn# zkoL2N-R0@G9|i_8AT4*VLR#!oA$Z$)pv2b}zm>{>Ly}-&K^-GgoBVb?ujm_>TL%jR z)%uOMfA?MARm*lIFz8X3JrjFZVEI;^{LT;Z6gdT4zdRhTB^W{bU|A~dp^>WI{Yk!( zse;5=-L$e-GNbdsA{xt=UyWOYC=y@m-+KwEktB{AVJw&)u@PPUIJC4>@G?=89T2-k zJxqK9!2-QzzRgTTv~Uv{137H$I?}M$M;|N^MJ&JAgKDy@Og6lA-ly_(7(6{9kQ1xy zxs10571nfTqSD755qcrjYjXn)U#|PF^X`uu&0jN2orUklO}+X)ZdjDJqm!ezd6gUfoRf#=E!LT2(I@87Mrhz zU^N|&Wp}FYfDUfzH)njDms*;9e7|^#7qi%1kOA@xl;~3m)XL5fU0r7mFOl`s25;4i z0lbU_RoR1Wmaf#BWX;H_`OqCmYMkjI(LV&olk1^g_i5_|0bUNajg;FLz$W6`aWx97 zHj|mcTM-v)M$lt}6Kif26W9k&quU*!eA#e{;xXgXB@5d@Qwf=CHRIM-MoW|hj-XdQ z4vb4-eCg*cYXXNb&2T%t5;e}bAcr!wqor4T-V|3V&b4j(x{%xFQX0}s$2M~tc0YvU zZ7MtANxyZ=EIX7vVN;B5qMN}VQHR_F>N|c8Y)`xT(fd4Y%d(!`_S$xX#9@~xG=G~) zqze%8$%kb~QF{WUdwuLgdYKdh?A+k88fxoOhX>5g? zK}O@gBqo5xWSFx{3>;55xE@J730#dN^2BdMDzfM1K9d4CGBGRTWti=&fc4CG7#D73 zbESG}n6aLQXXl&qHY~C%$^bbNtz)6;MF_Ztw5LTJ=MG5P1YWxH!jHSJw5Jun0&eue z=AA56maF#q8kR|JGj;gtEq~AX_vCc>2umieqoyQy`mwZA=obgZYL{b=k>|D8@fFh3 zk8HEVxcs$TC9WRJW6bpG_)J%U6J+|JRDMvjDBC>Jo(V-3h~yI=e#fXOySfk&XV$Av zj#<2F@cF5-0Wg#$bH_}pEF2ti4!x@FBpfzHK+Rv0h;coqf;`+`cMDoUAX{Ix?}pmN zrKVUT=Q6bY=?0}B2aBT?ml!2VDw21QOOET}(SIn#LDsdM9n)CY^=bqdcL&iOhn=eszE;+aID$&EB`Tr|%{%$>JE;40CR zrgFW$uj=HwXDU7KiM|=aoK=w~-z(r!7iAV*p?O%qwaf34(p%zcK)R$miU}7m6;6sz z=H8?~Y~>G*!fG&809%k!Z3V}^DAo8Ws0IGECVVze+J(>UP+807jBU#2>YlJlr6`>L z6|_Jpjj0#!)7v2K%sz~M>o5}X8_g0;$JzK|@0_l_Pyyn&!?V@6E$ow~9+`nJ6Sl(AiLBV_i~GU#3GpOGQk++@D2tpwt9TE z)V)CR(quRz%qM#)bTEQcJTbIJiDoOz^1!cwLLN14t!{3uue=T2wKjXr$xvC6I||RW z7VF0o!wxis70nG)+So_-OkM9`He@a*9wa8%FJHJmJcae8%kZSG} zY+Ek6=tBD7GmMtSlK?AbMUex%HY{2W<6uhw+t2sn|WL!owfAtOaP z;u<+gqlLCY!vNgQOLIO^?JU^2FC$Ib3MbQ5jY#NvxxQv)L5#tGXwmK&>7^}P~_GOeMz$xbO z>m>8+?l20Wry^LZLG7Ho1hXVpXL^F7!!Y!v0$tVZKzd)7bBlVUsumc|;{BRmImlu= zc}x13$Qg?^wzDT~`QYv^Dn)}OP0P7bwZUQHjO8f63z3bN<@~0L*tslB~n#2ATsQF%` ze!ce22;!4ah|NOk&TgdTnTf^lt##Q()|aUp42P7isumw5#WiY^W+6U-(ytYrum@BO zvMU*w?*z~%h$h%~2F1xYx&@%In=cksLaj#LY!+OEYx2lWhry4gJoRZ^?>3$Yc#c~u z-o7m2fiDi`NRQ{w&%8FxU$LW5dWMmPG^R%cmh31*OHJ$Oi7sa*bF_yHO&z^?@owS>Rfce!NvGwN?4e^$M}22oG)RR5ux zevR7GP5ZWovY`5RT4(Yfo9*eSecOWtQT<<3)&8!((p7)qsi$(P|3hVc+xu7C^9Q(t z`gOmT{4*2%dH;WM(H|)`s44!1nf_M|d;R&t#F+oRTYrA-|LoTvcylWLU%K~O0pA+_ fpFR2`!4x&Yw~jS2JV?LygpqnAQFW{^%iijL9xy)1 literal 0 HcmV?d00001 diff --git a/core/tests/swfs/avm2/greaterthan/test.swf b/core/tests/swfs/avm2/greaterthan/test.swf new file mode 100644 index 0000000000000000000000000000000000000000..57a1e69b2336b8a0ee3696ab05070dd104aefe7a GIT binary patch literal 4152 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 literal 0 HcmV?d00001 diff --git a/core/tests/swfs/avm2/lessequals/Test.as b/core/tests/swfs/avm2/lessequals/Test.as new file mode 100644 index 000000000..daf1b479f --- /dev/null +++ b/core/tests/swfs/avm2/lessequals/Test.as @@ -0,0 +1,773 @@ +package { + public class Test {} +} + +/// undefined, null, -5, -1, -0, 0, 1, 2, 5, "abc", "2", "true", "false", true, false, NaN + +trace("//undefined <= undefined"); +trace(undefined <= undefined); + +trace("//undefined <= null"); +trace(undefined <= null); + +trace("//undefined <= (-5)"); +trace(undefined <= (-5)); + +trace("//undefined <= (-1)"); +trace(undefined <= (-1)); + +trace("//undefined <= (-0)"); +trace(undefined <= (-0)); + +trace("//undefined <= 0"); +trace(undefined <= 0); + +trace("//undefined <= 1"); +trace(undefined <= 1); + +trace("//undefined <= 2"); +trace(undefined <= 2); + +trace("//undefined <= 5"); +trace(undefined <= 5); + +trace("//undefined <= \"abc\""); +trace(undefined <= "abc"); + +trace("//undefined <= \"2\""); +trace(undefined <= "2"); + +trace("//undefined <= \"true\""); +trace(undefined <= "true"); + +trace("//undefined <= \"false\""); +trace(undefined <= "false"); + +trace("//undefined <= true"); +trace(undefined <= true); + +trace("//undefined <= false"); +trace(undefined <= false); + +trace("//undefined <= NaN"); +trace(undefined <= NaN); + +trace("//null <= undefined"); +trace(null <= undefined); + +trace("//null <= null"); +trace(null <= null); + +trace("//null <= (-5)"); +trace(null <= (-5)); + +trace("//null <= (-1)"); +trace(null <= (-1)); + +trace("//null <= (-0)"); +trace(null <= (-0)); + +trace("//null <= 0"); +trace(null <= 0); + +trace("//null <= 1"); +trace(null <= 1); + +trace("//null <= 2"); +trace(null <= 2); + +trace("//null <= 5"); +trace(null <= 5); + +trace("//null <= \"abc\""); +trace(null <= "abc"); + +trace("//null <= \"2\""); +trace(null <= "2"); + +trace("//null <= \"true\""); +trace(null <= "true"); + +trace("//null <= \"false\""); +trace(null <= "false"); + +trace("//null <= true"); +trace(null <= true); + +trace("//null <= false"); +trace(null <= false); + +trace("//null <= NaN"); +trace(null <= NaN); + +trace("//(-5) <= undefined"); +trace((-5) <= undefined); + +trace("//(-5) <= null"); +trace((-5) <= null); + +trace("//(-5) <= (-5)"); +trace((-5) <= (-5)); + +trace("//(-5) <= (-1)"); +trace((-5) <= (-1)); + +trace("//(-5) <= (-0)"); +trace((-5) <= (-0)); + +trace("//(-5) <= 0"); +trace((-5) <= 0); + +trace("//(-5) <= 1"); +trace((-5) <= 1); + +trace("//(-5) <= 2"); +trace((-5) <= 2); + +trace("//(-5) <= 5"); +trace((-5) <= 5); + +trace("//(-5) <= \"abc\""); +trace((-5) <= "abc"); + +trace("//(-5) <= \"2\""); +trace((-5) <= "2"); + +trace("//(-5) <= \"true\""); +trace((-5) <= "true"); + +trace("//(-5) <= \"false\""); +trace((-5) <= "false"); + +trace("//(-5) <= true"); +trace((-5) <= true); + +trace("//(-5) <= false"); +trace((-5) <= false); + +trace("//(-5) <= NaN"); +trace((-5) <= NaN); + +trace("//(-1) <= undefined"); +trace((-1) <= undefined); + +trace("//(-1) <= null"); +trace((-1) <= null); + +trace("//(-1) <= (-5)"); +trace((-1) <= (-5)); + +trace("//(-1) <= (-1)"); +trace((-1) <= (-1)); + +trace("//(-1) <= (-0)"); +trace((-1) <= (-0)); + +trace("//(-1) <= 0"); +trace((-1) <= 0); + +trace("//(-1) <= 1"); +trace((-1) <= 1); + +trace("//(-1) <= 2"); +trace((-1) <= 2); + +trace("//(-1) <= 5"); +trace((-1) <= 5); + +trace("//(-1) <= \"abc\""); +trace((-1) <= "abc"); + +trace("//(-1) <= \"2\""); +trace((-1) <= "2"); + +trace("//(-1) <= \"true\""); +trace((-1) <= "true"); + +trace("//(-1) <= \"false\""); +trace((-1) <= "false"); + +trace("//(-1) <= true"); +trace((-1) <= true); + +trace("//(-1) <= false"); +trace((-1) <= false); + +trace("//(-1) <= NaN"); +trace((-1) <= NaN); + +trace("//(-0) <= undefined"); +trace((-0) <= undefined); + +trace("//(-0) <= null"); +trace((-0) <= null); + +trace("//(-0) <= (-5)"); +trace((-0) <= (-5)); + +trace("//(-0) <= (-1)"); +trace((-0) <= (-1)); + +trace("//(-0) <= (-0)"); +trace((-0) <= (-0)); + +trace("//(-0) <= 0"); +trace((-0) <= 0); + +trace("//(-0) <= 1"); +trace((-0) <= 1); + +trace("//(-0) <= 2"); +trace((-0) <= 2); + +trace("//(-0) <= 5"); +trace((-0) <= 5); + +trace("//(-0) <= \"abc\""); +trace((-0) <= "abc"); + +trace("//(-0) <= \"2\""); +trace((-0) <= "2"); + +trace("//(-0) <= \"true\""); +trace((-0) <= "true"); + +trace("//(-0) <= \"false\""); +trace((-0) <= "false"); + +trace("//(-0) <= true"); +trace((-0) <= true); + +trace("//(-0) <= false"); +trace((-0) <= false); + +trace("//(-0) <= NaN"); +trace((-0) <= NaN); + +trace("//0 <= undefined"); +trace(0 <= undefined); + +trace("//0 <= null"); +trace(0 <= null); + +trace("//0 <= (-5)"); +trace(0 <= (-5)); + +trace("//0 <= (-1)"); +trace(0 <= (-1)); + +trace("//0 <= (-0)"); +trace(0 <= (-0)); + +trace("//0 <= 0"); +trace(0 <= 0); + +trace("//0 <= 1"); +trace(0 <= 1); + +trace("//0 <= 2"); +trace(0 <= 2); + +trace("//0 <= 5"); +trace(0 <= 5); + +trace("//0 <= \"abc\""); +trace(0 <= "abc"); + +trace("//0 <= \"2\""); +trace(0 <= "2"); + +trace("//0 <= \"true\""); +trace(0 <= "true"); + +trace("//0 <= \"false\""); +trace(0 <= "false"); + +trace("//0 <= true"); +trace(0 <= true); + +trace("//0 <= false"); +trace(0 <= false); + +trace("//0 <= NaN"); +trace(0 <= NaN); + +trace("//1 <= undefined"); +trace(1 <= undefined); + +trace("//1 <= null"); +trace(1 <= null); + +trace("//1 <= (-5)"); +trace(1 <= (-5)); + +trace("//1 <= (-1)"); +trace(1 <= (-1)); + +trace("//1 <= (-0)"); +trace(1 <= (-0)); + +trace("//1 <= 0"); +trace(1 <= 0); + +trace("//1 <= 1"); +trace(1 <= 1); + +trace("//1 <= 2"); +trace(1 <= 2); + +trace("//1 <= 5"); +trace(1 <= 5); + +trace("//1 <= \"abc\""); +trace(1 <= "abc"); + +trace("//1 <= \"2\""); +trace(1 <= "2"); + +trace("//1 <= \"true\""); +trace(1 <= "true"); + +trace("//1 <= \"false\""); +trace(1 <= "false"); + +trace("//1 <= true"); +trace(1 <= true); + +trace("//1 <= false"); +trace(1 <= false); + +trace("//1 <= NaN"); +trace(1 <= NaN); + +trace("//2 <= undefined"); +trace(2 <= undefined); + +trace("//2 <= null"); +trace(2 <= null); + +trace("//2 <= (-5)"); +trace(2 <= (-5)); + +trace("//2 <= (-1)"); +trace(2 <= (-1)); + +trace("//2 <= (-0)"); +trace(2 <= (-0)); + +trace("//2 <= 0"); +trace(2 <= 0); + +trace("//2 <= 1"); +trace(2 <= 1); + +trace("//2 <= 2"); +trace(2 <= 2); + +trace("//2 <= 5"); +trace(2 <= 5); + +trace("//2 <= \"abc\""); +trace(2 <= "abc"); + +trace("//2 <= \"2\""); +trace(2 <= "2"); + +trace("//2 <= \"true\""); +trace(2 <= "true"); + +trace("//2 <= \"false\""); +trace(2 <= "false"); + +trace("//2 <= true"); +trace(2 <= true); + +trace("//2 <= false"); +trace(2 <= false); + +trace("//2 <= NaN"); +trace(2 <= NaN); + +trace("//5 <= undefined"); +trace(5 <= undefined); + +trace("//5 <= null"); +trace(5 <= null); + +trace("//5 <= (-5)"); +trace(5 <= (-5)); + +trace("//5 <= (-1)"); +trace(5 <= (-1)); + +trace("//5 <= (-0)"); +trace(5 <= (-0)); + +trace("//5 <= 0"); +trace(5 <= 0); + +trace("//5 <= 1"); +trace(5 <= 1); + +trace("//5 <= 2"); +trace(5 <= 2); + +trace("//5 <= 5"); +trace(5 <= 5); + +trace("//5 <= \"abc\""); +trace(5 <= "abc"); + +trace("//5 <= \"2\""); +trace(5 <= "2"); + +trace("//5 <= \"true\""); +trace(5 <= "true"); + +trace("//5 <= \"false\""); +trace(5 <= "false"); + +trace("//5 <= true"); +trace(5 <= true); + +trace("//5 <= false"); +trace(5 <= false); + +trace("//5 <= NaN"); +trace(5 <= NaN); + +trace("//\"abc\" <= undefined"); +trace("abc" <= undefined); + +trace("//\"abc\" <= null"); +trace("abc" <= null); + +trace("//\"abc\" <= (-5)"); +trace("abc" <= (-5)); + +trace("//\"abc\" <= (-1)"); +trace("abc" <= (-1)); + +trace("//\"abc\" <= (-0)"); +trace("abc" <= (-0)); + +trace("//\"abc\" <= 0"); +trace("abc" <= 0); + +trace("//\"abc\" <= 1"); +trace("abc" <= 1); + +trace("//\"abc\" <= 2"); +trace("abc" <= 2); + +trace("//\"abc\" <= 5"); +trace("abc" <= 5); + +trace("//\"abc\" <= \"abc\""); +trace("abc" <= "abc"); + +trace("//\"abc\" <= \"2\""); +trace("abc" <= "2"); + +trace("//\"abc\" <= \"true\""); +trace("abc" <= "true"); + +trace("//\"abc\" <= \"false\""); +trace("abc" <= "false"); + +trace("//\"abc\" <= true"); +trace("abc" <= true); + +trace("//\"abc\" <= false"); +trace("abc" <= false); + +trace("//\"abc\" <= NaN"); +trace("abc" <= NaN); + +trace("//\"2\" <= undefined"); +trace("2" <= undefined); + +trace("//\"2\" <= null"); +trace("2" <= null); + +trace("//\"2\" <= (-5)"); +trace("2" <= (-5)); + +trace("//\"2\" <= (-1)"); +trace("2" <= (-1)); + +trace("//\"2\" <= (-0)"); +trace("2" <= (-0)); + +trace("//\"2\" <= 0"); +trace("2" <= 0); + +trace("//\"2\" <= 1"); +trace("2" <= 1); + +trace("//\"2\" <= 2"); +trace("2" <= 2); + +trace("//\"2\" <= 5"); +trace("2" <= 5); + +trace("//\"2\" <= \"abc\""); +trace("2" <= "abc"); + +trace("//\"2\" <= \"2\""); +trace("2" <= "2"); + +trace("//\"2\" <= \"true\""); +trace("2" <= "true"); + +trace("//\"2\" <= \"false\""); +trace("2" <= "false"); + +trace("//\"2\" <= true"); +trace("2" <= true); + +trace("//\"2\" <= false"); +trace("2" <= false); + +trace("//\"2\" <= NaN"); +trace("2" <= NaN); + +trace("//\"true\" <= undefined"); +trace("true" <= undefined); + +trace("//\"true\" <= null"); +trace("true" <= null); + +trace("//\"true\" <= (-5)"); +trace("true" <= (-5)); + +trace("//\"true\" <= (-1)"); +trace("true" <= (-1)); + +trace("//\"true\" <= (-0)"); +trace("true" <= (-0)); + +trace("//\"true\" <= 0"); +trace("true" <= 0); + +trace("//\"true\" <= 1"); +trace("true" <= 1); + +trace("//\"true\" <= 2"); +trace("true" <= 2); + +trace("//\"true\" <= 5"); +trace("true" <= 5); + +trace("//\"true\" <= \"abc\""); +trace("true" <= "abc"); + +trace("//\"true\" <= \"2\""); +trace("true" <= "2"); + +trace("//\"true\" <= \"true\""); +trace("true" <= "true"); + +trace("//\"true\" <= \"false\""); +trace("true" <= "false"); + +trace("//\"true\" <= true"); +trace("true" <= true); + +trace("//\"true\" <= false"); +trace("true" <= false); + +trace("//\"true\" <= NaN"); +trace("true" <= NaN); + +trace("//\"false\" <= undefined"); +trace("false" <= undefined); + +trace("//\"false\" <= null"); +trace("false" <= null); + +trace("//\"false\" <= (-5)"); +trace("false" <= (-5)); + +trace("//\"false\" <= (-1)"); +trace("false" <= (-1)); + +trace("//\"false\" <= (-0)"); +trace("false" <= (-0)); + +trace("//\"false\" <= 0"); +trace("false" <= 0); + +trace("//\"false\" <= 1"); +trace("false" <= 1); + +trace("//\"false\" <= 2"); +trace("false" <= 2); + +trace("//\"false\" <= 5"); +trace("false" <= 5); + +trace("//\"false\" <= \"abc\""); +trace("false" <= "abc"); + +trace("//\"false\" <= \"2\""); +trace("false" <= "2"); + +trace("//\"false\" <= \"true\""); +trace("false" <= "true"); + +trace("//\"false\" <= \"false\""); +trace("false" <= "false"); + +trace("//\"false\" <= true"); +trace("false" <= true); + +trace("//\"false\" <= false"); +trace("false" <= false); + +trace("//\"false\" <= NaN"); +trace("false" <= NaN); + +trace("//true <= undefined"); +trace(true <= undefined); + +trace("//true <= null"); +trace(true <= null); + +trace("//true <= (-5)"); +trace(true <= (-5)); + +trace("//true <= (-1)"); +trace(true <= (-1)); + +trace("//true <= (-0)"); +trace(true <= (-0)); + +trace("//true <= 0"); +trace(true <= 0); + +trace("//true <= 1"); +trace(true <= 1); + +trace("//true <= 2"); +trace(true <= 2); + +trace("//true <= 5"); +trace(true <= 5); + +trace("//true <= \"abc\""); +trace(true <= "abc"); + +trace("//true <= \"2\""); +trace(true <= "2"); + +trace("//true <= \"true\""); +trace(true <= "true"); + +trace("//true <= \"false\""); +trace(true <= "false"); + +trace("//true <= true"); +trace(true <= true); + +trace("//true <= false"); +trace(true <= false); + +trace("//true <= NaN"); +trace(true <= NaN); + +trace("//false <= undefined"); +trace(false <= undefined); + +trace("//false <= null"); +trace(false <= null); + +trace("//false <= (-5)"); +trace(false <= (-5)); + +trace("//false <= (-1)"); +trace(false <= (-1)); + +trace("//false <= (-0)"); +trace(false <= (-0)); + +trace("//false <= 0"); +trace(false <= 0); + +trace("//false <= 1"); +trace(false <= 1); + +trace("//false <= 2"); +trace(false <= 2); + +trace("//false <= 5"); +trace(false <= 5); + +trace("//false <= \"abc\""); +trace(false <= "abc"); + +trace("//false <= \"2\""); +trace(false <= "2"); + +trace("//false <= \"true\""); +trace(false <= "true"); + +trace("//false <= \"false\""); +trace(false <= "false"); + +trace("//false <= true"); +trace(false <= true); + +trace("//false <= false"); +trace(false <= false); + +trace("//false <= NaN"); +trace(false <= NaN); + +trace("//NaN <= undefined"); +trace(NaN <= undefined); + +trace("//NaN <= null"); +trace(NaN <= null); + +trace("//NaN <= (-5)"); +trace(NaN <= (-5)); + +trace("//NaN <= (-1)"); +trace(NaN <= (-1)); + +trace("//NaN <= (-0)"); +trace(NaN <= (-0)); + +trace("//NaN <= 0"); +trace(NaN <= 0); + +trace("//NaN <= 1"); +trace(NaN <= 1); + +trace("//NaN <= 2"); +trace(NaN <= 2); + +trace("//NaN <= 5"); +trace(NaN <= 5); + +trace("//NaN <= \"abc\""); +trace(NaN <= "abc"); + +trace("//NaN <= \"2\""); +trace(NaN <= "2"); + +trace("//NaN <= \"true\""); +trace(NaN <= "true"); + +trace("//NaN <= \"false\""); +trace(NaN <= "false"); + +trace("//NaN <= true"); +trace(NaN <= true); + +trace("//NaN <= false"); +trace(NaN <= false); + +trace("//NaN <= NaN"); +trace(NaN <= NaN); \ No newline at end of file diff --git a/core/tests/swfs/avm2/lessequals/output.txt b/core/tests/swfs/avm2/lessequals/output.txt new file mode 100644 index 000000000..9454cb1f3 --- /dev/null +++ b/core/tests/swfs/avm2/lessequals/output.txt @@ -0,0 +1,512 @@ +//undefined <= undefined +false +//undefined <= null +false +//undefined <= (-5) +false +//undefined <= (-1) +false +//undefined <= (-0) +false +//undefined <= 0 +false +//undefined <= 1 +false +//undefined <= 2 +false +//undefined <= 5 +false +//undefined <= "abc" +false +//undefined <= "2" +false +//undefined <= "true" +false +//undefined <= "false" +false +//undefined <= true +false +//undefined <= false +false +//undefined <= NaN +false +//null <= undefined +false +//null <= null +true +//null <= (-5) +false +//null <= (-1) +false +//null <= (-0) +true +//null <= 0 +true +//null <= 1 +true +//null <= 2 +true +//null <= 5 +true +//null <= "abc" +false +//null <= "2" +true +//null <= "true" +false +//null <= "false" +false +//null <= true +true +//null <= false +true +//null <= NaN +false +//(-5) <= undefined +false +//(-5) <= null +true +//(-5) <= (-5) +true +//(-5) <= (-1) +true +//(-5) <= (-0) +true +//(-5) <= 0 +true +//(-5) <= 1 +true +//(-5) <= 2 +true +//(-5) <= 5 +true +//(-5) <= "abc" +false +//(-5) <= "2" +true +//(-5) <= "true" +false +//(-5) <= "false" +false +//(-5) <= true +true +//(-5) <= false +true +//(-5) <= NaN +false +//(-1) <= undefined +false +//(-1) <= null +true +//(-1) <= (-5) +false +//(-1) <= (-1) +true +//(-1) <= (-0) +true +//(-1) <= 0 +true +//(-1) <= 1 +true +//(-1) <= 2 +true +//(-1) <= 5 +true +//(-1) <= "abc" +false +//(-1) <= "2" +true +//(-1) <= "true" +false +//(-1) <= "false" +false +//(-1) <= true +true +//(-1) <= false +true +//(-1) <= NaN +false +//(-0) <= undefined +false +//(-0) <= null +true +//(-0) <= (-5) +false +//(-0) <= (-1) +false +//(-0) <= (-0) +true +//(-0) <= 0 +true +//(-0) <= 1 +true +//(-0) <= 2 +true +//(-0) <= 5 +true +//(-0) <= "abc" +false +//(-0) <= "2" +true +//(-0) <= "true" +false +//(-0) <= "false" +false +//(-0) <= true +true +//(-0) <= false +true +//(-0) <= NaN +false +//0 <= undefined +false +//0 <= null +true +//0 <= (-5) +false +//0 <= (-1) +false +//0 <= (-0) +true +//0 <= 0 +true +//0 <= 1 +true +//0 <= 2 +true +//0 <= 5 +true +//0 <= "abc" +false +//0 <= "2" +true +//0 <= "true" +false +//0 <= "false" +false +//0 <= true +true +//0 <= false +true +//0 <= NaN +false +//1 <= undefined +false +//1 <= null +false +//1 <= (-5) +false +//1 <= (-1) +false +//1 <= (-0) +false +//1 <= 0 +false +//1 <= 1 +true +//1 <= 2 +true +//1 <= 5 +true +//1 <= "abc" +false +//1 <= "2" +true +//1 <= "true" +false +//1 <= "false" +false +//1 <= true +true +//1 <= false +false +//1 <= NaN +false +//2 <= undefined +false +//2 <= null +false +//2 <= (-5) +false +//2 <= (-1) +false +//2 <= (-0) +false +//2 <= 0 +false +//2 <= 1 +false +//2 <= 2 +true +//2 <= 5 +true +//2 <= "abc" +false +//2 <= "2" +true +//2 <= "true" +false +//2 <= "false" +false +//2 <= true +false +//2 <= false +false +//2 <= NaN +false +//5 <= undefined +false +//5 <= null +false +//5 <= (-5) +false +//5 <= (-1) +false +//5 <= (-0) +false +//5 <= 0 +false +//5 <= 1 +false +//5 <= 2 +false +//5 <= 5 +true +//5 <= "abc" +false +//5 <= "2" +false +//5 <= "true" +false +//5 <= "false" +false +//5 <= true +false +//5 <= false +false +//5 <= NaN +false +//"abc" <= undefined +false +//"abc" <= null +false +//"abc" <= (-5) +false +//"abc" <= (-1) +false +//"abc" <= (-0) +false +//"abc" <= 0 +false +//"abc" <= 1 +false +//"abc" <= 2 +false +//"abc" <= 5 +false +//"abc" <= "abc" +true +//"abc" <= "2" +false +//"abc" <= "true" +true +//"abc" <= "false" +true +//"abc" <= true +false +//"abc" <= false +false +//"abc" <= NaN +false +//"2" <= undefined +false +//"2" <= null +false +//"2" <= (-5) +false +//"2" <= (-1) +false +//"2" <= (-0) +false +//"2" <= 0 +false +//"2" <= 1 +false +//"2" <= 2 +true +//"2" <= 5 +true +//"2" <= "abc" +true +//"2" <= "2" +true +//"2" <= "true" +true +//"2" <= "false" +true +//"2" <= true +false +//"2" <= false +false +//"2" <= NaN +false +//"true" <= undefined +false +//"true" <= null +false +//"true" <= (-5) +false +//"true" <= (-1) +false +//"true" <= (-0) +false +//"true" <= 0 +false +//"true" <= 1 +false +//"true" <= 2 +false +//"true" <= 5 +false +//"true" <= "abc" +false +//"true" <= "2" +false +//"true" <= "true" +true +//"true" <= "false" +false +//"true" <= true +false +//"true" <= false +false +//"true" <= NaN +false +//"false" <= undefined +false +//"false" <= null +false +//"false" <= (-5) +false +//"false" <= (-1) +false +//"false" <= (-0) +false +//"false" <= 0 +false +//"false" <= 1 +false +//"false" <= 2 +false +//"false" <= 5 +false +//"false" <= "abc" +false +//"false" <= "2" +false +//"false" <= "true" +true +//"false" <= "false" +true +//"false" <= true +false +//"false" <= false +false +//"false" <= NaN +false +//true <= undefined +false +//true <= null +false +//true <= (-5) +false +//true <= (-1) +false +//true <= (-0) +false +//true <= 0 +false +//true <= 1 +true +//true <= 2 +true +//true <= 5 +true +//true <= "abc" +false +//true <= "2" +true +//true <= "true" +false +//true <= "false" +false +//true <= true +true +//true <= false +false +//true <= NaN +false +//false <= undefined +false +//false <= null +true +//false <= (-5) +false +//false <= (-1) +false +//false <= (-0) +true +//false <= 0 +true +//false <= 1 +true +//false <= 2 +true +//false <= 5 +true +//false <= "abc" +false +//false <= "2" +true +//false <= "true" +false +//false <= "false" +false +//false <= true +true +//false <= false +true +//false <= NaN +false +//NaN <= undefined +false +//NaN <= null +false +//NaN <= (-5) +false +//NaN <= (-1) +false +//NaN <= (-0) +false +//NaN <= 0 +false +//NaN <= 1 +false +//NaN <= 2 +false +//NaN <= 5 +false +//NaN <= "abc" +false +//NaN <= "2" +false +//NaN <= "true" +false +//NaN <= "false" +false +//NaN <= true +false +//NaN <= false +false +//NaN <= NaN +false diff --git a/core/tests/swfs/avm2/lessequals/test.fla b/core/tests/swfs/avm2/lessequals/test.fla new file mode 100644 index 0000000000000000000000000000000000000000..bbbf05379d9a0f5b17213c2debc83d0b5adf3174 GIT binary patch literal 3983 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 literal 0 HcmV?d00001 diff --git a/core/tests/swfs/avm2/lessequals/test.swf b/core/tests/swfs/avm2/lessequals/test.swf new file mode 100644 index 0000000000000000000000000000000000000000..ef47acd595b15c6722bdb39fcee84dc4cf835a25 GIT binary patch literal 4165 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 D_&t>O literal 0 HcmV?d00001 diff --git a/core/tests/swfs/avm2/lessthan/Test.as b/core/tests/swfs/avm2/lessthan/Test.as new file mode 100644 index 000000000..224dc4449 --- /dev/null +++ b/core/tests/swfs/avm2/lessthan/Test.as @@ -0,0 +1,773 @@ +package { + public class Test {} +} + +/// undefined, null, -5, -1, -0, 0, 1, 2, 5, "abc", "2", "true", "false", true, false, NaN + +trace("//undefined < undefined"); +trace(undefined < undefined); + +trace("//undefined < null"); +trace(undefined < null); + +trace("//undefined < (-5)"); +trace(undefined < (-5)); + +trace("//undefined < (-1)"); +trace(undefined < (-1)); + +trace("//undefined < (-0)"); +trace(undefined < (-0)); + +trace("//undefined < 0"); +trace(undefined < 0); + +trace("//undefined < 1"); +trace(undefined < 1); + +trace("//undefined < 2"); +trace(undefined < 2); + +trace("//undefined < 5"); +trace(undefined < 5); + +trace("//undefined < \"abc\""); +trace(undefined < "abc"); + +trace("//undefined < \"2\""); +trace(undefined < "2"); + +trace("//undefined < \"true\""); +trace(undefined < "true"); + +trace("//undefined < \"false\""); +trace(undefined < "false"); + +trace("//undefined < true"); +trace(undefined < true); + +trace("//undefined < false"); +trace(undefined < false); + +trace("//undefined < NaN"); +trace(undefined < NaN); + +trace("//null < undefined"); +trace(null < undefined); + +trace("//null < null"); +trace(null < null); + +trace("//null < (-5)"); +trace(null < (-5)); + +trace("//null < (-1)"); +trace(null < (-1)); + +trace("//null < (-0)"); +trace(null < (-0)); + +trace("//null < 0"); +trace(null < 0); + +trace("//null < 1"); +trace(null < 1); + +trace("//null < 2"); +trace(null < 2); + +trace("//null < 5"); +trace(null < 5); + +trace("//null < \"abc\""); +trace(null < "abc"); + +trace("//null < \"2\""); +trace(null < "2"); + +trace("//null < \"true\""); +trace(null < "true"); + +trace("//null < \"false\""); +trace(null < "false"); + +trace("//null < true"); +trace(null < true); + +trace("//null < false"); +trace(null < false); + +trace("//null < NaN"); +trace(null < NaN); + +trace("//(-5) < undefined"); +trace((-5) < undefined); + +trace("//(-5) < null"); +trace((-5) < null); + +trace("//(-5) < (-5)"); +trace((-5) < (-5)); + +trace("//(-5) < (-1)"); +trace((-5) < (-1)); + +trace("//(-5) < (-0)"); +trace((-5) < (-0)); + +trace("//(-5) < 0"); +trace((-5) < 0); + +trace("//(-5) < 1"); +trace((-5) < 1); + +trace("//(-5) < 2"); +trace((-5) < 2); + +trace("//(-5) < 5"); +trace((-5) < 5); + +trace("//(-5) < \"abc\""); +trace((-5) < "abc"); + +trace("//(-5) < \"2\""); +trace((-5) < "2"); + +trace("//(-5) < \"true\""); +trace((-5) < "true"); + +trace("//(-5) < \"false\""); +trace((-5) < "false"); + +trace("//(-5) < true"); +trace((-5) < true); + +trace("//(-5) < false"); +trace((-5) < false); + +trace("//(-5) < NaN"); +trace((-5) < NaN); + +trace("//(-1) < undefined"); +trace((-1) < undefined); + +trace("//(-1) < null"); +trace((-1) < null); + +trace("//(-1) < (-5)"); +trace((-1) < (-5)); + +trace("//(-1) < (-1)"); +trace((-1) < (-1)); + +trace("//(-1) < (-0)"); +trace((-1) < (-0)); + +trace("//(-1) < 0"); +trace((-1) < 0); + +trace("//(-1) < 1"); +trace((-1) < 1); + +trace("//(-1) < 2"); +trace((-1) < 2); + +trace("//(-1) < 5"); +trace((-1) < 5); + +trace("//(-1) < \"abc\""); +trace((-1) < "abc"); + +trace("//(-1) < \"2\""); +trace((-1) < "2"); + +trace("//(-1) < \"true\""); +trace((-1) < "true"); + +trace("//(-1) < \"false\""); +trace((-1) < "false"); + +trace("//(-1) < true"); +trace((-1) < true); + +trace("//(-1) < false"); +trace((-1) < false); + +trace("//(-1) < NaN"); +trace((-1) < NaN); + +trace("//(-0) < undefined"); +trace((-0) < undefined); + +trace("//(-0) < null"); +trace((-0) < null); + +trace("//(-0) < (-5)"); +trace((-0) < (-5)); + +trace("//(-0) < (-1)"); +trace((-0) < (-1)); + +trace("//(-0) < (-0)"); +trace((-0) < (-0)); + +trace("//(-0) < 0"); +trace((-0) < 0); + +trace("//(-0) < 1"); +trace((-0) < 1); + +trace("//(-0) < 2"); +trace((-0) < 2); + +trace("//(-0) < 5"); +trace((-0) < 5); + +trace("//(-0) < \"abc\""); +trace((-0) < "abc"); + +trace("//(-0) < \"2\""); +trace((-0) < "2"); + +trace("//(-0) < \"true\""); +trace((-0) < "true"); + +trace("//(-0) < \"false\""); +trace((-0) < "false"); + +trace("//(-0) < true"); +trace((-0) < true); + +trace("//(-0) < false"); +trace((-0) < false); + +trace("//(-0) < NaN"); +trace((-0) < NaN); + +trace("//0 < undefined"); +trace(0 < undefined); + +trace("//0 < null"); +trace(0 < null); + +trace("//0 < (-5)"); +trace(0 < (-5)); + +trace("//0 < (-1)"); +trace(0 < (-1)); + +trace("//0 < (-0)"); +trace(0 < (-0)); + +trace("//0 < 0"); +trace(0 < 0); + +trace("//0 < 1"); +trace(0 < 1); + +trace("//0 < 2"); +trace(0 < 2); + +trace("//0 < 5"); +trace(0 < 5); + +trace("//0 < \"abc\""); +trace(0 < "abc"); + +trace("//0 < \"2\""); +trace(0 < "2"); + +trace("//0 < \"true\""); +trace(0 < "true"); + +trace("//0 < \"false\""); +trace(0 < "false"); + +trace("//0 < true"); +trace(0 < true); + +trace("//0 < false"); +trace(0 < false); + +trace("//0 < NaN"); +trace(0 < NaN); + +trace("//1 < undefined"); +trace(1 < undefined); + +trace("//1 < null"); +trace(1 < null); + +trace("//1 < (-5)"); +trace(1 < (-5)); + +trace("//1 < (-1)"); +trace(1 < (-1)); + +trace("//1 < (-0)"); +trace(1 < (-0)); + +trace("//1 < 0"); +trace(1 < 0); + +trace("//1 < 1"); +trace(1 < 1); + +trace("//1 < 2"); +trace(1 < 2); + +trace("//1 < 5"); +trace(1 < 5); + +trace("//1 < \"abc\""); +trace(1 < "abc"); + +trace("//1 < \"2\""); +trace(1 < "2"); + +trace("//1 < \"true\""); +trace(1 < "true"); + +trace("//1 < \"false\""); +trace(1 < "false"); + +trace("//1 < true"); +trace(1 < true); + +trace("//1 < false"); +trace(1 < false); + +trace("//1 < NaN"); +trace(1 < NaN); + +trace("//2 < undefined"); +trace(2 < undefined); + +trace("//2 < null"); +trace(2 < null); + +trace("//2 < (-5)"); +trace(2 < (-5)); + +trace("//2 < (-1)"); +trace(2 < (-1)); + +trace("//2 < (-0)"); +trace(2 < (-0)); + +trace("//2 < 0"); +trace(2 < 0); + +trace("//2 < 1"); +trace(2 < 1); + +trace("//2 < 2"); +trace(2 < 2); + +trace("//2 < 5"); +trace(2 < 5); + +trace("//2 < \"abc\""); +trace(2 < "abc"); + +trace("//2 < \"2\""); +trace(2 < "2"); + +trace("//2 < \"true\""); +trace(2 < "true"); + +trace("//2 < \"false\""); +trace(2 < "false"); + +trace("//2 < true"); +trace(2 < true); + +trace("//2 < false"); +trace(2 < false); + +trace("//2 < NaN"); +trace(2 < NaN); + +trace("//5 < undefined"); +trace(5 < undefined); + +trace("//5 < null"); +trace(5 < null); + +trace("//5 < (-5)"); +trace(5 < (-5)); + +trace("//5 < (-1)"); +trace(5 < (-1)); + +trace("//5 < (-0)"); +trace(5 < (-0)); + +trace("//5 < 0"); +trace(5 < 0); + +trace("//5 < 1"); +trace(5 < 1); + +trace("//5 < 2"); +trace(5 < 2); + +trace("//5 < 5"); +trace(5 < 5); + +trace("//5 < \"abc\""); +trace(5 < "abc"); + +trace("//5 < \"2\""); +trace(5 < "2"); + +trace("//5 < \"true\""); +trace(5 < "true"); + +trace("//5 < \"false\""); +trace(5 < "false"); + +trace("//5 < true"); +trace(5 < true); + +trace("//5 < false"); +trace(5 < false); + +trace("//5 < NaN"); +trace(5 < NaN); + +trace("//\"abc\" < undefined"); +trace("abc" < undefined); + +trace("//\"abc\" < null"); +trace("abc" < null); + +trace("//\"abc\" < (-5)"); +trace("abc" < (-5)); + +trace("//\"abc\" < (-1)"); +trace("abc" < (-1)); + +trace("//\"abc\" < (-0)"); +trace("abc" < (-0)); + +trace("//\"abc\" < 0"); +trace("abc" < 0); + +trace("//\"abc\" < 1"); +trace("abc" < 1); + +trace("//\"abc\" < 2"); +trace("abc" < 2); + +trace("//\"abc\" < 5"); +trace("abc" < 5); + +trace("//\"abc\" < \"abc\""); +trace("abc" < "abc"); + +trace("//\"abc\" < \"2\""); +trace("abc" < "2"); + +trace("//\"abc\" < \"true\""); +trace("abc" < "true"); + +trace("//\"abc\" < \"false\""); +trace("abc" < "false"); + +trace("//\"abc\" < true"); +trace("abc" < true); + +trace("//\"abc\" < false"); +trace("abc" < false); + +trace("//\"abc\" < NaN"); +trace("abc" < NaN); + +trace("//\"2\" < undefined"); +trace("2" < undefined); + +trace("//\"2\" < null"); +trace("2" < null); + +trace("//\"2\" < (-5)"); +trace("2" < (-5)); + +trace("//\"2\" < (-1)"); +trace("2" < (-1)); + +trace("//\"2\" < (-0)"); +trace("2" < (-0)); + +trace("//\"2\" < 0"); +trace("2" < 0); + +trace("//\"2\" < 1"); +trace("2" < 1); + +trace("//\"2\" < 2"); +trace("2" < 2); + +trace("//\"2\" < 5"); +trace("2" < 5); + +trace("//\"2\" < \"abc\""); +trace("2" < "abc"); + +trace("//\"2\" < \"2\""); +trace("2" < "2"); + +trace("//\"2\" < \"true\""); +trace("2" < "true"); + +trace("//\"2\" < \"false\""); +trace("2" < "false"); + +trace("//\"2\" < true"); +trace("2" < true); + +trace("//\"2\" < false"); +trace("2" < false); + +trace("//\"2\" < NaN"); +trace("2" < NaN); + +trace("//\"true\" < undefined"); +trace("true" < undefined); + +trace("//\"true\" < null"); +trace("true" < null); + +trace("//\"true\" < (-5)"); +trace("true" < (-5)); + +trace("//\"true\" < (-1)"); +trace("true" < (-1)); + +trace("//\"true\" < (-0)"); +trace("true" < (-0)); + +trace("//\"true\" < 0"); +trace("true" < 0); + +trace("//\"true\" < 1"); +trace("true" < 1); + +trace("//\"true\" < 2"); +trace("true" < 2); + +trace("//\"true\" < 5"); +trace("true" < 5); + +trace("//\"true\" < \"abc\""); +trace("true" < "abc"); + +trace("//\"true\" < \"2\""); +trace("true" < "2"); + +trace("//\"true\" < \"true\""); +trace("true" < "true"); + +trace("//\"true\" < \"false\""); +trace("true" < "false"); + +trace("//\"true\" < true"); +trace("true" < true); + +trace("//\"true\" < false"); +trace("true" < false); + +trace("//\"true\" < NaN"); +trace("true" < NaN); + +trace("//\"false\" < undefined"); +trace("false" < undefined); + +trace("//\"false\" < null"); +trace("false" < null); + +trace("//\"false\" < (-5)"); +trace("false" < (-5)); + +trace("//\"false\" < (-1)"); +trace("false" < (-1)); + +trace("//\"false\" < (-0)"); +trace("false" < (-0)); + +trace("//\"false\" < 0"); +trace("false" < 0); + +trace("//\"false\" < 1"); +trace("false" < 1); + +trace("//\"false\" < 2"); +trace("false" < 2); + +trace("//\"false\" < 5"); +trace("false" < 5); + +trace("//\"false\" < \"abc\""); +trace("false" < "abc"); + +trace("//\"false\" < \"2\""); +trace("false" < "2"); + +trace("//\"false\" < \"true\""); +trace("false" < "true"); + +trace("//\"false\" < \"false\""); +trace("false" < "false"); + +trace("//\"false\" < true"); +trace("false" < true); + +trace("//\"false\" < false"); +trace("false" < false); + +trace("//\"false\" < NaN"); +trace("false" < NaN); + +trace("//true < undefined"); +trace(true < undefined); + +trace("//true < null"); +trace(true < null); + +trace("//true < (-5)"); +trace(true < (-5)); + +trace("//true < (-1)"); +trace(true < (-1)); + +trace("//true < (-0)"); +trace(true < (-0)); + +trace("//true < 0"); +trace(true < 0); + +trace("//true < 1"); +trace(true < 1); + +trace("//true < 2"); +trace(true < 2); + +trace("//true < 5"); +trace(true < 5); + +trace("//true < \"abc\""); +trace(true < "abc"); + +trace("//true < \"2\""); +trace(true < "2"); + +trace("//true < \"true\""); +trace(true < "true"); + +trace("//true < \"false\""); +trace(true < "false"); + +trace("//true < true"); +trace(true < true); + +trace("//true < false"); +trace(true < false); + +trace("//true < NaN"); +trace(true < NaN); + +trace("//false < undefined"); +trace(false < undefined); + +trace("//false < null"); +trace(false < null); + +trace("//false < (-5)"); +trace(false < (-5)); + +trace("//false < (-1)"); +trace(false < (-1)); + +trace("//false < (-0)"); +trace(false < (-0)); + +trace("//false < 0"); +trace(false < 0); + +trace("//false < 1"); +trace(false < 1); + +trace("//false < 2"); +trace(false < 2); + +trace("//false < 5"); +trace(false < 5); + +trace("//false < \"abc\""); +trace(false < "abc"); + +trace("//false < \"2\""); +trace(false < "2"); + +trace("//false < \"true\""); +trace(false < "true"); + +trace("//false < \"false\""); +trace(false < "false"); + +trace("//false < true"); +trace(false < true); + +trace("//false < false"); +trace(false < false); + +trace("//false < NaN"); +trace(false < NaN); + +trace("//NaN < undefined"); +trace(NaN < undefined); + +trace("//NaN < null"); +trace(NaN < null); + +trace("//NaN < (-5)"); +trace(NaN < (-5)); + +trace("//NaN < (-1)"); +trace(NaN < (-1)); + +trace("//NaN < (-0)"); +trace(NaN < (-0)); + +trace("//NaN < 0"); +trace(NaN < 0); + +trace("//NaN < 1"); +trace(NaN < 1); + +trace("//NaN < 2"); +trace(NaN < 2); + +trace("//NaN < 5"); +trace(NaN < 5); + +trace("//NaN < \"abc\""); +trace(NaN < "abc"); + +trace("//NaN < \"2\""); +trace(NaN < "2"); + +trace("//NaN < \"true\""); +trace(NaN < "true"); + +trace("//NaN < \"false\""); +trace(NaN < "false"); + +trace("//NaN < true"); +trace(NaN < true); + +trace("//NaN < false"); +trace(NaN < false); + +trace("//NaN < NaN"); +trace(NaN < NaN); \ No newline at end of file diff --git a/core/tests/swfs/avm2/lessthan/output.txt b/core/tests/swfs/avm2/lessthan/output.txt new file mode 100644 index 000000000..33cda3a2b --- /dev/null +++ b/core/tests/swfs/avm2/lessthan/output.txt @@ -0,0 +1,512 @@ +//undefined < undefined +false +//undefined < null +false +//undefined < (-5) +false +//undefined < (-1) +false +//undefined < (-0) +false +//undefined < 0 +false +//undefined < 1 +false +//undefined < 2 +false +//undefined < 5 +false +//undefined < "abc" +false +//undefined < "2" +false +//undefined < "true" +false +//undefined < "false" +false +//undefined < true +false +//undefined < false +false +//undefined < NaN +false +//null < undefined +false +//null < null +false +//null < (-5) +false +//null < (-1) +false +//null < (-0) +false +//null < 0 +false +//null < 1 +true +//null < 2 +true +//null < 5 +true +//null < "abc" +false +//null < "2" +true +//null < "true" +false +//null < "false" +false +//null < true +true +//null < false +false +//null < NaN +false +//(-5) < undefined +false +//(-5) < null +true +//(-5) < (-5) +false +//(-5) < (-1) +true +//(-5) < (-0) +true +//(-5) < 0 +true +//(-5) < 1 +true +//(-5) < 2 +true +//(-5) < 5 +true +//(-5) < "abc" +false +//(-5) < "2" +true +//(-5) < "true" +false +//(-5) < "false" +false +//(-5) < true +true +//(-5) < false +true +//(-5) < NaN +false +//(-1) < undefined +false +//(-1) < null +true +//(-1) < (-5) +false +//(-1) < (-1) +false +//(-1) < (-0) +true +//(-1) < 0 +true +//(-1) < 1 +true +//(-1) < 2 +true +//(-1) < 5 +true +//(-1) < "abc" +false +//(-1) < "2" +true +//(-1) < "true" +false +//(-1) < "false" +false +//(-1) < true +true +//(-1) < false +true +//(-1) < NaN +false +//(-0) < undefined +false +//(-0) < null +false +//(-0) < (-5) +false +//(-0) < (-1) +false +//(-0) < (-0) +false +//(-0) < 0 +false +//(-0) < 1 +true +//(-0) < 2 +true +//(-0) < 5 +true +//(-0) < "abc" +false +//(-0) < "2" +true +//(-0) < "true" +false +//(-0) < "false" +false +//(-0) < true +true +//(-0) < false +false +//(-0) < NaN +false +//0 < undefined +false +//0 < null +false +//0 < (-5) +false +//0 < (-1) +false +//0 < (-0) +false +//0 < 0 +false +//0 < 1 +true +//0 < 2 +true +//0 < 5 +true +//0 < "abc" +false +//0 < "2" +true +//0 < "true" +false +//0 < "false" +false +//0 < true +true +//0 < false +false +//0 < NaN +false +//1 < undefined +false +//1 < null +false +//1 < (-5) +false +//1 < (-1) +false +//1 < (-0) +false +//1 < 0 +false +//1 < 1 +false +//1 < 2 +true +//1 < 5 +true +//1 < "abc" +false +//1 < "2" +true +//1 < "true" +false +//1 < "false" +false +//1 < true +false +//1 < false +false +//1 < NaN +false +//2 < undefined +false +//2 < null +false +//2 < (-5) +false +//2 < (-1) +false +//2 < (-0) +false +//2 < 0 +false +//2 < 1 +false +//2 < 2 +false +//2 < 5 +true +//2 < "abc" +false +//2 < "2" +false +//2 < "true" +false +//2 < "false" +false +//2 < true +false +//2 < false +false +//2 < NaN +false +//5 < undefined +false +//5 < null +false +//5 < (-5) +false +//5 < (-1) +false +//5 < (-0) +false +//5 < 0 +false +//5 < 1 +false +//5 < 2 +false +//5 < 5 +false +//5 < "abc" +false +//5 < "2" +false +//5 < "true" +false +//5 < "false" +false +//5 < true +false +//5 < false +false +//5 < NaN +false +//"abc" < undefined +false +//"abc" < null +false +//"abc" < (-5) +false +//"abc" < (-1) +false +//"abc" < (-0) +false +//"abc" < 0 +false +//"abc" < 1 +false +//"abc" < 2 +false +//"abc" < 5 +false +//"abc" < "abc" +false +//"abc" < "2" +false +//"abc" < "true" +true +//"abc" < "false" +true +//"abc" < true +false +//"abc" < false +false +//"abc" < NaN +false +//"2" < undefined +false +//"2" < null +false +//"2" < (-5) +false +//"2" < (-1) +false +//"2" < (-0) +false +//"2" < 0 +false +//"2" < 1 +false +//"2" < 2 +false +//"2" < 5 +true +//"2" < "abc" +true +//"2" < "2" +false +//"2" < "true" +true +//"2" < "false" +true +//"2" < true +false +//"2" < false +false +//"2" < NaN +false +//"true" < undefined +false +//"true" < null +false +//"true" < (-5) +false +//"true" < (-1) +false +//"true" < (-0) +false +//"true" < 0 +false +//"true" < 1 +false +//"true" < 2 +false +//"true" < 5 +false +//"true" < "abc" +false +//"true" < "2" +false +//"true" < "true" +false +//"true" < "false" +false +//"true" < true +false +//"true" < false +false +//"true" < NaN +false +//"false" < undefined +false +//"false" < null +false +//"false" < (-5) +false +//"false" < (-1) +false +//"false" < (-0) +false +//"false" < 0 +false +//"false" < 1 +false +//"false" < 2 +false +//"false" < 5 +false +//"false" < "abc" +false +//"false" < "2" +false +//"false" < "true" +true +//"false" < "false" +false +//"false" < true +false +//"false" < false +false +//"false" < NaN +false +//true < undefined +false +//true < null +false +//true < (-5) +false +//true < (-1) +false +//true < (-0) +false +//true < 0 +false +//true < 1 +false +//true < 2 +true +//true < 5 +true +//true < "abc" +false +//true < "2" +true +//true < "true" +false +//true < "false" +false +//true < true +false +//true < false +false +//true < NaN +false +//false < undefined +false +//false < null +false +//false < (-5) +false +//false < (-1) +false +//false < (-0) +false +//false < 0 +false +//false < 1 +true +//false < 2 +true +//false < 5 +true +//false < "abc" +false +//false < "2" +true +//false < "true" +false +//false < "false" +false +//false < true +true +//false < false +false +//false < NaN +false +//NaN < undefined +false +//NaN < null +false +//NaN < (-5) +false +//NaN < (-1) +false +//NaN < (-0) +false +//NaN < 0 +false +//NaN < 1 +false +//NaN < 2 +false +//NaN < 5 +false +//NaN < "abc" +false +//NaN < "2" +false +//NaN < "true" +false +//NaN < "false" +false +//NaN < true +false +//NaN < false +false +//NaN < NaN +false diff --git a/core/tests/swfs/avm2/lessthan/test.fla b/core/tests/swfs/avm2/lessthan/test.fla new file mode 100644 index 0000000000000000000000000000000000000000..bbbf05379d9a0f5b17213c2debc83d0b5adf3174 GIT binary patch literal 3983 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 literal 0 HcmV?d00001 diff --git a/core/tests/swfs/avm2/lessthan/test.swf b/core/tests/swfs/avm2/lessthan/test.swf new file mode 100644 index 0000000000000000000000000000000000000000..70903c9aaed933ff2dd54e984660b3139440cc88 GIT binary patch literal 4149 zcmYjRc{CJkAFU`-_Pw%)vX&)b>|r7#YbKQJvX6BzLiR0dWT_;tCfQ#xb|y238f4$b zpoy3n%NR3ezUlkt`_8$~x##}w^SkGs^PKY-IoQabkw0}RvaE3Se5CFA6brsYyTn}v z;&?7oTuAB?0=wilbo@k+ANJy7i!q3zK6x+ivP$VaZ%_S(%i0OztO?JW&i^HGR!q0D z0U~xeA_4yH!!Ernw5{(DqFW)er`HqZwGnHDDObhK=pSM9-?$r#f7cee4O8G@Wj^QU z?Ck7y$i{qJn63K`{m&<1`=}lKh5RfdWz9Xq5$^zV_PXgI8leDe@i=h&OslSt(9+}T zPc#$phPI(W-c!F_ecm|5PM@I$QbnA^qn{U!O|Hy03LpHzd?*@xv&Vy)Jd3i2NtZPF zUh(&}YH|9SMjw)^-&pYpO__3aQ+Jm{}#^7|${VDBb&xD^P%WBy7)f!& zas@1~>Fn7j*P~&?aY#Cas{eUp`Jb*$DJenPnW z|FDC*NCGEAv<7s_SM|zQb;@6cX-QGQ$-CfWIyjjGK3=Vvi2Xk-PT+QMU=p|kqO}Os zT7+onY=NT>ao}Yfn2rN$mPgAiLRw-z2P>uBF5qR?_-z+;C9GW?`?Fv^^7JyAR+VQ_ zb|)g-%2Qomu|{2H^8w0^5Qk+JeUe);d84V}|1!i@}Y4Gp#j)W3kn% z$_F3Mv`y;F;@v0m*Q5hJ%u8DNWAuPE?binJ7*tuGS$qPVCL;hmYM8vo$UYf?Yk1_+NCq}Bc$E1(#1dnhwDmUSz$|+@+26aEJaS5-?{qgyup+6-5#Rn&XLF2;Z*I?E5>E&m8Xc?q25*h@%@diqs&&mB5L$DWdc^% ztu}G%W3D``tE*1OU-0QCTN!5s#7yQ?g;@)7pmb8!0;W?wJ_Ur;*||J*HwVSOla7j# z%ztLi-_Yumg}PG^Iy}s$S=-UrWmf^Ug{V~P!n47{w+?vh;h!vIolK+TwN<@pt z9P66$Gv~Y-FT?CyhXK`vmufrso(Pv0oLJ|$L!W{`(PZ6e&Jf*c5}p#&x}Ir=8)`l( zqCdOwMX}IY?+UD|68a;z;J5QTiTo>13H?&^k^FrE?Z&wiHjOWOFMYiKoy*|O%JN#1 z)$M$%qbV0U3O%aE+e<&Rvc^JMn+6UAC
  • BEjmIPSvbBOmb|9xLqWeaj5jGP*7=y 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