Browse Source

Testcase fixes for opcode reworks

pull/896/head
Sami Vaarala 8 years ago
parent
commit
939caeec46
  1. 4
      tests/api/test-dump-load-basic.c
  2. 77
      tests/ecmascript/test-bug-fromcharcode-argcount.js
  3. 6
      tests/ecmascript/test-dev-duk-harray.js

4
tests/api/test-dump-load-basic.c

@ -40,7 +40,7 @@
/*=== /*===
*** test_basic (duk_safe_call) *** test_basic (duk_safe_call)
dump result type: 7 dump result type: 7
ff000000000e000000030000000100090000000000010000000130000980000000f300400052000040c200000114000101400001414c800041c38000820301014030000141000000814201804030000040000000006f00000000057072696e74000000000568656c6c6f0140091eb851eb851f000000030000000000000000000300020000000100000001300c08800080009a0000806f0000002f000000020000000561646465720000000f66616b6546696c656e616d652e6a730000000d03000000010000000c000000000000000178000000000000000179000000010000000000000001780000000179000000000000000000000006676c6f62616c0000000f66616b6546696c656e616d652e6a730000000e0e000000010000000c00000000000000000000000000 ff000000000e000000030000000100090000000000010000000130000980000000f300400052000040c200000114000101400001414c800041c380008203000140b00001410000008142000040f0000040000000006f00000000057072696e74000000000568656c6c6f0140091eb851eb851f000000030000000000000000000300020000000100000001300c08800080009a0000806f0000002f000000020000000561646465720000000f66616b6546696c656e616d652e6a730000000d03000000010000000c000000000000000178000000000000000179000000010000000000000001780000000179000000000000000000000006676c6f62616c0000000f66616b6546696c656e616d652e6a730000000e0e000000010000000c00000000000000000000000000
load result type: 6 load result type: 6
hello 3 3.14 hello 3 3.14
call result type: 1 call result type: 1
@ -93,7 +93,7 @@ static duk_ret_t test_basic(duk_context *ctx, void *udata) {
/*=== /*===
*** test_mandel (duk_safe_call) *** test_mandel (duk_safe_call)
Mandelbrot source length: 884 Mandelbrot source length: 884
ff000000005c000000100000000000130000000000010000001e300c0980801300038007004380190083000008338000156e8000016e800000c30080c3ab0003802d800000ee800013ee0000c3b67ffffeae0080c39d8003839c8083821b0000483380000fee800001ee800001030004023300040340000103ab0003802d800000ee80000dee000103b67ffffeae0001039d8103839c818381db0000883380000a6e8000022e80000143800002438000028300010182010143ab0003802d800000ee8000082e000143b67ffffeae048242dc0502831c0602c39a828383ab0003806d800001ae04c0c39c0503839c0403829a0602c39b0383825a7ffffcae810143ab0003806d800000ae000181828000036e838143ab0003806d800000ae000201828000022e848143ab0003806d800000ae00028182800000ee0002c1828000006e7ffff82e0000887300034380000303c20783839800018400008380307ffff26e00004873004343920003440000038442088404180003c48200840030008380307fffec6e000008730000002f014004000000000000013ff400000000000001400800000000000001400000000000000000000000012301401000000000000000000000012e01401400000000000000000000012c01402400000000000000000000012d00000000013d00000000047075736800000000057072696e7400000000046a6f696e000000000000000000000000066d616e64656c000000096d616e64656c2e6a73000000285c000000020000001400000013000000210000002880201001008004244108910080844a02100420000000017700000000000000016800000001000000046974657200000002000000016900000003000000016a00000004000000016b000000050000000163000000060000000278300000000700000002793000000008000000027878000000090000000279790000000a000000037878320000000b000000037979320000000c000000046c696e650000000d0000000000000000 ff000000005a000000100000000000130000000000010000001e300c098080130003800700438019008300000833800014ee8000016e800000c30080c3ab0003802d800000ee8000136e0000c3b67ffffeae0080c39d8003839c8083821b0000483380000fae800001ee800001030004023300040340000103ab0003802d800000ee80000dae000103b67ffffeae0001039d8103839c818381db0000883380000a6e8000022e80000143800002438000028300010182010143ab0003802d800000ee8000082e000143b67ffffeae048242dc0502831c0602c39a828383ab0003806d800001ae04c0c39c0503839c0403829a0602c39b0383825a7ffffcae810143ab0003806d800000ae000181828000036e838143ab0003806d800000ae000201828000022e848143ab0003806d800000ae00028182800000ee0002c1828000006e7ffff82e00008873000343c08603439500018400000380707ffff2ae000048730043439200034440870344150003c48200040070000380707fffecee000008730000002f014004000000000000013ff400000000000001400800000000000001400000000000000000000000012301401000000000000000000000012e01401400000000000000000000012c01402400000000000000000000012d00000000013d00000000047075736800000000057072696e7400000000046a6f696e000000000000000000000000066d616e64656c000000096d616e64656c2e6a73000000285a000000020000001400000013000000210000002880201001008004244108910080844a04201080000000017700000000000000016800000001000000046974657200000002000000016900000003000000016a00000004000000016b000000050000000163000000060000000278300000000700000002793000000008000000027878000000090000000279790000000a000000037878320000000b000000037979320000000c000000046c696e650000000d0000000000000000
..........................,,,,,,,,,,,,,,,,,,,,,,,,,......................... ..........................,,,,,,,,,,,,,,,,,,,,,,,,,.........................
....................,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,................... ....................,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,...................
................,,,,,,,,,,,,,,,,,,,,,,,,,,,---=----,,,,,,,,,,............... ................,,,,,,,,,,,,,,,,,,,,,,,,,,,---=----,,,,,,,,,,...............

77
tests/ecmascript/test-bug-fromcharcode-argcount.js

@ -1,51 +1,46 @@
/*=== /*===
300 250
ABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJ ABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJ
RangeError
===*/ ===*/
/* This currently fails due to Duktape register count limits; the failure is function test(count) {
* not specific to String.fromCharCode(). However, String.fromCharCode() is var src = [];
* an example of a function which could conceivably be used with a lot of var i;
* arguments, to build a large Unicode string. src.push('String.fromCharCode(');
*/ for (i = 0; i < count; i++) {
if (i > 0) {
src.push(',');
}
src.push(String(65 + (i % 10)));
}
src.push(')');
return eval(src.join(''));
}
try { try {
var t; var t;
t = String.fromCharCode( try {
65, 66, 67, 68, 69, 70, 71, 72, 73, 74, t = test(250);
65, 66, 67, 68, 69, 70, 71, 72, 73, 74, print(t.length);
65, 66, 67, 68, 69, 70, 71, 72, 73, 74, print(t);
65, 66, 67, 68, 69, 70, 71, 72, 73, 74, } catch (e) {
65, 66, 67, 68, 69, 70, 71, 72, 73, 74, print(e.name);
65, 66, 67, 68, 69, 70, 71, 72, 73, 74, }
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74); // 300 args
print(t.length); /* This currently fails due to Duktape register count limits; the failure is
print(t); * not specific to String.fromCharCode(). However, String.fromCharCode() is
* an example of a function which could conceivably be used with a lot of
* arguments, to build a large Unicode string.
*/
try {
t = test(300);
print(t.length);
print(t);
} catch (e) {
print(e.name);
}
} catch (e) { } catch (e) {
print(e); print(e.stack || e);
} }

6
tests/ecmascript/test-dev-duk-harray.js

@ -31,7 +31,7 @@ array constructor test
10 [null,null,null,null,null,"foo",null,null,null,null] 10 [null,null,null,null,null,"foo",null,null,null,null]
6 [1,2,3,"foo","bar","quux"] 6 [1,2,3,"foo","bar","quux"]
6 [1,2,3,"foo","bar","baz"] 6 [1,2,3,"foo","bar","baz"]
256 255
===*/ ===*/
function arrayConstructorTest() { function arrayConstructorTest() {
@ -58,7 +58,7 @@ function arrayConstructorTest() {
// Create Array with a lot of initializer arguments (more than value stack reserve). // Create Array with a lot of initializer arguments (more than value stack reserve).
arr = new Array( arr = new Array(
// 256 // 255 is the current maximum arg count
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
@ -74,7 +74,7 @@ function arrayConstructorTest() {
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15
); );
print(arr.length); print(arr.length);
} }

Loading…
Cancel
Save