tests: Add test for reading AMF3 objects
This commit is contained in:
parent
da601a4984
commit
e7a723f250
|
@ -1310,7 +1310,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "flash-lso"
|
name = "flash-lso"
|
||||||
version = "0.5.0"
|
version = "0.5.0"
|
||||||
source = "git+https://github.com/ruffle-rs/rust-flash-lso#19fecd07b9888c4bdaa66771c468095783b52bed"
|
source = "git+https://github.com/ruffle-rs/rust-flash-lso?rev=19fecd07b9888c4bdaa66771c468095783b52bed#19fecd07b9888c4bdaa66771c468095783b52bed"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cookie-factory",
|
"cookie-factory",
|
||||||
"derive-try-from-primitive",
|
"derive-try-from-primitive",
|
||||||
|
|
|
@ -478,6 +478,7 @@ swf_tests! {
|
||||||
(as3_get_definition_by_name, "avm2/get_definition_by_name", 1),
|
(as3_get_definition_by_name, "avm2/get_definition_by_name", 1),
|
||||||
(as3_get_qualified_class_name, "avm2/get_qualified_class_name", 1),
|
(as3_get_qualified_class_name, "avm2/get_qualified_class_name", 1),
|
||||||
(as3_get_qualified_super_class_name, "avm2/get_qualified_super_class_name", 1),
|
(as3_get_qualified_super_class_name, "avm2/get_qualified_super_class_name", 1),
|
||||||
|
(as3_bytearray_readobject_amf3, "avm2/bytearray_readobject_amf3", 1),
|
||||||
(as3_array_constr, "avm2/array_constr", 1),
|
(as3_array_constr, "avm2/array_constr", 1),
|
||||||
(as3_array_access, "avm2/array_access", 1),
|
(as3_array_access, "avm2/array_access", 1),
|
||||||
(as3_array_storage, "avm2/array_storage", 1),
|
(as3_array_storage, "avm2/array_storage", 1),
|
||||||
|
|
|
@ -0,0 +1,56 @@
|
||||||
|
package
|
||||||
|
{
|
||||||
|
import flash.utils.ByteArray;
|
||||||
|
public class Test
|
||||||
|
{
|
||||||
|
var TESTS = [
|
||||||
|
[0], // UNDEFINED
|
||||||
|
[1], // NULL
|
||||||
|
[2], // FALSE
|
||||||
|
[3], // TRUE
|
||||||
|
[4,1], // INTEGER
|
||||||
|
[5,63,241,153,153,153,153,153,154], // NUMBER
|
||||||
|
[5,127,240,0,0,0,0,0,0], // INFINITY
|
||||||
|
[5,255,240,0,0,0,0,0,0], // NEG INFINITY
|
||||||
|
[5,255,248,0,0,0,0,0,0], // NAN
|
||||||
|
[6,23,84,101,115,116,32,115,116,114,105,110,103], // STRING
|
||||||
|
[9,7,1,4,1,4,2,4,3], // DENSE ARRAY
|
||||||
|
[9,7,5,50,48,4,2,1,4,1,4,2,4,3], // ARRAY WITH HOLES
|
||||||
|
[9,7,11,104,101,108,108,111,4,5,1,4,1,4,2,4,3], // ARRAY WITH ELEMENTS
|
||||||
|
[9,7,5,50,48,4,4,11,104,101,108,108,111,4,5,1,4,1,4,2,4,3], // ARRAY WITH HOLES AND ELEMENTS
|
||||||
|
[9,7,1,9,5,1,4,5,4,3,9,5,1,4,7,4,2,9,5,1,4,7,9,5,1,4,8,4,2], // MULTI DIMENSIONAL ARRAY
|
||||||
|
[10,11,1,9,116,101,115,116,6,0,1],
|
||||||
|
[12,21,84,101,115,116,32,98,121,116,101,115] // BYTEARRAY
|
||||||
|
];
|
||||||
|
public function testToObject(arr)
|
||||||
|
{
|
||||||
|
var ba = new ByteArray();
|
||||||
|
for (var i = 0; i < arr.length; i++)
|
||||||
|
{
|
||||||
|
ba.writeByte(arr[i]);
|
||||||
|
}
|
||||||
|
ba.position = 0;
|
||||||
|
return ba.readObject();
|
||||||
|
}
|
||||||
|
public function Test()
|
||||||
|
{
|
||||||
|
for (var i = 0; i < TESTS.length; i++)
|
||||||
|
{
|
||||||
|
var obj = testToObject(TESTS[i]);
|
||||||
|
trace(obj);
|
||||||
|
if (obj is Object)
|
||||||
|
{
|
||||||
|
trace("showing props:");
|
||||||
|
for (var prop in obj)
|
||||||
|
{
|
||||||
|
if (! (prop is int))
|
||||||
|
{
|
||||||
|
trace(prop);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
trace("done showing props");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,50 @@
|
||||||
|
undefined
|
||||||
|
null
|
||||||
|
false
|
||||||
|
showing props:
|
||||||
|
done showing props
|
||||||
|
true
|
||||||
|
showing props:
|
||||||
|
done showing props
|
||||||
|
1
|
||||||
|
showing props:
|
||||||
|
done showing props
|
||||||
|
1.1
|
||||||
|
showing props:
|
||||||
|
done showing props
|
||||||
|
Infinity
|
||||||
|
showing props:
|
||||||
|
done showing props
|
||||||
|
-Infinity
|
||||||
|
showing props:
|
||||||
|
done showing props
|
||||||
|
NaN
|
||||||
|
showing props:
|
||||||
|
done showing props
|
||||||
|
Test string
|
||||||
|
showing props:
|
||||||
|
done showing props
|
||||||
|
1,2,3
|
||||||
|
showing props:
|
||||||
|
done showing props
|
||||||
|
1,2,3,,,,,,,,,,,,,,,,,,2
|
||||||
|
showing props:
|
||||||
|
done showing props
|
||||||
|
1,2,3
|
||||||
|
showing props:
|
||||||
|
hello
|
||||||
|
done showing props
|
||||||
|
1,2,3,,,,,,,,,,,,,,,,,,4
|
||||||
|
showing props:
|
||||||
|
hello
|
||||||
|
done showing props
|
||||||
|
5,3,7,2,7,8,2
|
||||||
|
showing props:
|
||||||
|
done showing props
|
||||||
|
[object Object]
|
||||||
|
showing props:
|
||||||
|
test
|
||||||
|
done showing props
|
||||||
|
Test bytes
|
||||||
|
showing props:
|
||||||
|
done showing props
|
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue