nxt_string("TypeError: argument must be a byte string") },
{ nxt_string("'A'.toBytes().toString('latin1')"),
- nxt_string("TypeError: Unknown encoding: 'latin1'") },
+ nxt_string("TypeError: Unknown encoding: \"latin1\"") },
{ nxt_string("'ABCD'.toBytes().toString('hex')"),
nxt_string("41424344") },
nxt_string("undefined") },
{ nxt_string("var a = {}; a.b.c"),
- nxt_string("TypeError: cannot get property 'c' of undefined") },
+ nxt_string("TypeError: cannot get property \"c\" of undefined") },
{ nxt_string("'a'[0]"),
nxt_string("a") },
nxt_string("3") },
{ nxt_string("var a = undefined; a.b++; a.b"),
- nxt_string("TypeError: cannot get property 'b' of undefined") },
+ nxt_string("TypeError: cannot get property \"b\" of undefined") },
{ nxt_string("var a = null; a.b++; a.b"),
- nxt_string("TypeError: cannot get property 'b' of undefined") },
+ nxt_string("TypeError: cannot get property \"b\" of undefined") },
{ nxt_string("var a = true; a.b++; a.b"),
nxt_string("TypeError: property set on primitive boolean type") },
nxt_string("SyntaxError: Unexpected token \";\" in 1") },
{ nxt_string("var x = { a: 1, b: x.a }"),
- nxt_string("TypeError: cannot get property 'a' of undefined") },
+ nxt_string("TypeError: cannot get property \"a\" of undefined") },
{ nxt_string("var a = { b: 2 }; a.b += 1"),
nxt_string("3") },
/* Math object is immutable. */
{ nxt_string("delete Math.max"),
- nxt_string("TypeError: Cannot delete property 'max' of object") },
+ nxt_string("TypeError: Cannot delete property \"max\" of object") },
{ nxt_string("Math.E = 1"),
- nxt_string("TypeError: Cannot assign to read-only property 'E' of object") },
+ nxt_string("TypeError: Cannot assign to read-only property \"E\" of object") },
{ nxt_string("var o = { 'a': 1, 'b': 2 }; var i; "
"for (i in o) { delete o.a; delete o.b; }; njs.dump(o)"),
nxt_string("12") },
{ nxt_string("var p = $r3.props; p.a = 1"),
- nxt_string("TypeError: Cannot assign to read-only property 'a' of external") },
+ nxt_string("TypeError: Cannot assign to read-only property \"a\" of external") },
{ nxt_string("var p = $r3.props; delete p.a"),
- nxt_string("TypeError: Cannot delete property 'a' of external") },
+ nxt_string("TypeError: Cannot delete property \"a\" of external") },
{ nxt_string("$r.vars.p + $r2.vars.q + $r3.vars.k"),
nxt_string("pvalqvalkval") },
nxt_string("b") },
{ nxt_string("$r3.vars.error = 1"),
- nxt_string("Error: cannot set 'error' prop") },
+ nxt_string("Error: cannot set \"error\" prop") },
{ nxt_string("delete $r3.vars.error"),
- nxt_string("Error: cannot delete 'error' prop") },
+ nxt_string("Error: cannot delete \"error\" prop") },
{ nxt_string("delete $r3.vars.e"),
nxt_string("true") },
nxt_string("kval") },
{ nxt_string("$r3.consts.k = 1"),
- nxt_string("TypeError: Cannot assign to read-only property 'k' of external") },
+ nxt_string("TypeError: Cannot assign to read-only property \"k\" of external") },
{ nxt_string("delete $r3.consts.k"),
- nxt_string("TypeError: Cannot delete property 'k' of external") },
+ nxt_string("TypeError: Cannot delete property \"k\" of external") },
{ nxt_string("delete $r3.vars.p; $r3.vars.p"),
nxt_string("undefined") },
nxt_string("true") },
{ nxt_string("delete $r.uri"),
- nxt_string("TypeError: Cannot delete property 'uri' of external") },
+ nxt_string("TypeError: Cannot delete property \"uri\" of external") },
{ nxt_string("delete $r.one"),
- nxt_string("TypeError: Cannot delete property 'one' of external") },
+ nxt_string("TypeError: Cannot delete property \"one\" of external") },
{ nxt_string("$r.some_method.call($r, 'YES')"),
nxt_string("АБВ") },
nxt_string("undefined") },
{ nxt_string("$r.error = 'OK'"),
- nxt_string("TypeError: Cannot assign to read-only property 'error' of external") },
+ nxt_string("TypeError: Cannot assign to read-only property \"error\" of external") },
{ nxt_string("var a = { toString: function() { return 1 } }; a"),
nxt_string("1") },
nxt_string("0") },
{ nxt_string("function f() { }; f.length = 1"),
- nxt_string("TypeError: Cannot assign to read-only property 'length' of function") },
+ nxt_string("TypeError: Cannot assign to read-only property \"length\" of function") },
{ nxt_string("function f(...rest) { }; f.length"),
nxt_string("0") },
nxt_string("TypeError: number is not a function") },
{ nxt_string("var o = {a:1}; o.a()"),
- nxt_string("TypeError: 'a' is not a function") },
+ nxt_string("TypeError: \"a\" is not a function") },
{ nxt_string("(function(){})()"),
nxt_string("undefined") },
nxt_string("[object Function]") },
{ nxt_string("''.concat.call()"),
- nxt_string("TypeError: 'this' argument is null or undefined") },
+ nxt_string("TypeError: \"this\" argument is null or undefined") },
{ nxt_string("''.concat.call('a', 'b', 'c')"),
nxt_string("abc") },
nxt_string("ab,cd") },
{ nxt_string("''.concat.apply()"),
- nxt_string("TypeError: 'this' argument is null or undefined") },
+ nxt_string("TypeError: \"this\" argument is null or undefined") },
{ nxt_string("''.concat.apply('a')"),
nxt_string("a") },
nxt_string("01") },
{ nxt_string("var concat = ''.concat; concat(1,2,3)"),
- nxt_string("TypeError: 'this' argument is null or undefined") },
+ nxt_string("TypeError: \"this\" argument is null or undefined") },
{ nxt_string("var concat = ''.concat; concat.call(1,2,3)"),
nxt_string("123") },
nxt_string("1") },
{ nxt_string("(function(){return arguments.callee;})()"),
- nxt_string("TypeError: 'caller', 'callee' properties may not be accessed") },
+ nxt_string("TypeError: \"caller\", \"callee\" properties may not be accessed") },
{ nxt_string("(function(){return arguments.caller;})()"),
- nxt_string("TypeError: 'caller', 'callee' properties may not be accessed") },
+ nxt_string("TypeError: \"caller\", \"callee\" properties may not be accessed") },
{ nxt_string("function sum() { var args = Array.prototype.slice.call(arguments); "
"return args.reduce(function(prev, curr) {return prev + curr})};"
nxt_string("SyntaxError: Invalid RegExp flags \"x\"") },
{ nxt_string("[0].map(RegExp().toString)"),
- nxt_string("TypeError: 'this' argument is not a regexp") },
+ nxt_string("TypeError: \"this\" argument is not a regexp") },
/* Non-standard ECMA-262 features. */
/* Memory object is immutable. */
{ nxt_string("var e = MemoryError('e'); e.name = 'E'"),
- nxt_string("TypeError: Cannot add property 'name', object is not extensible") },
+ nxt_string("TypeError: Cannot add property \"name\", object is not extensible") },
{ nxt_string("EvalError.prototype.name"),
nxt_string("EvalError") },
nxt_string("SyntaxError: Unexpected token \"null\" in 1") },
{ nxt_string("'a'.f()"),
- nxt_string("TypeError: 'f' is not a function") },
+ nxt_string("TypeError: \"f\" is not a function") },
{ nxt_string("1..f()"),
- nxt_string("TypeError: 'f' is not a function") },
+ nxt_string("TypeError: \"f\" is not a function") },
{ nxt_string("try {}"),
nxt_string("SyntaxError: Missing catch or finally after try in 1") },
nxt_string("1") },
{ nxt_string("this.undefined = 42"),
- nxt_string("TypeError: Cannot assign to read-only property 'undefined' of object") },
+ nxt_string("TypeError: Cannot assign to read-only property \"undefined\" of object") },
{ nxt_string("this.Infinity = 42"),
- nxt_string("TypeError: Cannot assign to read-only property 'Infinity' of object") },
+ nxt_string("TypeError: Cannot assign to read-only property \"Infinity\" of object") },
{ nxt_string("this.NaN = 42"),
- nxt_string("TypeError: Cannot assign to read-only property 'NaN' of object") },
+ nxt_string("TypeError: Cannot assign to read-only property \"NaN\" of object") },
{ nxt_string("typeof this.undefined"),
nxt_string("undefined") },
nxt_string("true") },
{ nxt_string("Object.prototype.__proto__.f()"),
- nxt_string("TypeError: cannot get property 'f' of undefined") },
+ nxt_string("TypeError: cannot get property \"f\" of undefined") },
{ nxt_string("Object.prototype.toString.call(Object.prototype)"),
nxt_string("[object Object]") },
nxt_string("true") },
{ nxt_string("({}).__proto__ = 1"),
- nxt_string("TypeError: Cannot assign to read-only property '__proto__' of object") },
+ nxt_string("TypeError: Cannot assign to read-only property \"__proto__\" of object") },
{ nxt_string("({}).__proto__.constructor === Object"),
nxt_string("true") },
nxt_string("β") },
{ nxt_string("var s = new String('αβ'); s[1] = 'b'"),
- nxt_string("TypeError: Cannot assign to read-only property '1' of object string") },
+ nxt_string("TypeError: Cannot assign to read-only property \"1\" of object string") },
{ nxt_string("var s = new String('αβ'); s[4] = 'ab'; s[4]"),
nxt_string("ab") },
nxt_string("a,1,c,3,b,2") },
{ nxt_string("var o = {}; Object.defineProperty(o, 'a', {}); o.a = 1"),
- nxt_string("TypeError: Cannot assign to read-only property 'a' of object") },
+ nxt_string("TypeError: Cannot assign to read-only property \"a\" of object") },
{ nxt_string("var o = {}; Object.defineProperty(o, 'a', {writable:false}); o.a = 1"),
- nxt_string("TypeError: Cannot assign to read-only property 'a' of object") },
+ nxt_string("TypeError: Cannot assign to read-only property \"a\" of object") },
{ nxt_string("var o = {}; Object.defineProperty(o, 'a', {writable:true});"
"o.a = 1; o.a"),
{ nxt_string("var o = {};"
"Object.defineProperty(o, 'a', {value:1}); delete o.a"),
- nxt_string("TypeError: Cannot delete property 'a' of object") },
+ nxt_string("TypeError: Cannot delete property \"a\" of object") },
{ nxt_string("var o = {};"
"Object.defineProperty(o, 'a', {value:1, configurable:true});"
{ nxt_string("var o = {};"
"Object.defineProperty(o, 'a', {value:1, configurable:false});"
"delete o.a"),
- nxt_string("TypeError: Cannot delete property 'a' of object") },
+ nxt_string("TypeError: Cannot delete property \"a\" of object") },
{ nxt_string("var o = {};"
"Object.defineProperty(o, 'a', Object.create({value:2})); o.a"),
{ nxt_string("var o = {};"
"Object.defineProperty(o, 'a', {configurable:false});"
"Object.defineProperty(o, 'a', {configurable:true})"),
- nxt_string("TypeError: Cannot redefine property: 'a'") },
+ nxt_string("TypeError: Cannot redefine property: \"a\"") },
{ nxt_string("var o = {};"
"Object.defineProperty(o, 'a', {configurable:false});"
"Object.defineProperty(o, 'a', {enumerable:true})"),
- nxt_string("TypeError: Cannot redefine property: 'a'") },
+ nxt_string("TypeError: Cannot redefine property: \"a\"") },
{ nxt_string("var o = {};"
"Object.defineProperty(o, 'a', {configurable:false});"
"Object.defineProperty(o, 'a', {writable:true})"),
- nxt_string("TypeError: Cannot redefine property: 'a'") },
+ nxt_string("TypeError: Cannot redefine property: \"a\"") },
{ nxt_string("var o = {};"
"Object.defineProperty(o, 'a', {configurable:false});"
{ nxt_string("var o = {};"
"Object.defineProperty(o, 'a', {value:1});"
"Object.defineProperty(o, 'a', {value:2}).a"),
- nxt_string("TypeError: Cannot redefine property: 'a'") },
+ nxt_string("TypeError: Cannot redefine property: \"a\"") },
{ nxt_string("var o = {};"
"Object.defineProperty(o, 'a', {configurable:true});"
{ nxt_string("var o = {a:1}; delete o.a;"
"Object.defineProperty(o, 'a', { value: 1 }); o.a = 2; o.a"),
- nxt_string("TypeError: Cannot assign to read-only property 'a' of object") },
+ nxt_string("TypeError: Cannot assign to read-only property \"a\" of object") },
{ nxt_string("var o = {a:1}; delete o.a;"
"Object.defineProperty(o, 'a', { value: 1, writable:1 }); o.a = 2; o.a"),
nxt_string("undefined") },
{ nxt_string("var o = Object.freeze({a:1}); o.a = 2"),
- nxt_string("TypeError: Cannot assign to read-only property 'a' of object") },
+ nxt_string("TypeError: Cannot assign to read-only property \"a\" of object") },
{ nxt_string("var o = Object.freeze({a:1}); delete o.a"),
- nxt_string("TypeError: Cannot delete property 'a' of object") },
+ nxt_string("TypeError: Cannot delete property \"a\" of object") },
{ nxt_string("var o = Object.freeze({a:1}); o.b = 1; o.b"),
- nxt_string("TypeError: Cannot add property 'b', object is not extensible") },
+ nxt_string("TypeError: Cannot add property \"b\", object is not extensible") },
{ nxt_string("var o = Object.freeze(Object.create({a:1})); o.a = 2; o.a"),
- nxt_string("TypeError: Cannot add property 'a', object is not extensible") },
+ nxt_string("TypeError: Cannot add property \"a\", object is not extensible") },
{ nxt_string("var o = Object.freeze({a:{b:1}}); o.a.b = 2; o.a.b"),
nxt_string("2") },
nxt_string("TypeError: object is not extensible") },
{ nxt_string("var a = [1,2]; a.a = 1; Object.freeze(a); delete a.a"),
- nxt_string("TypeError: Cannot delete property 'a' of array") },
+ nxt_string("TypeError: Cannot delete property \"a\" of array") },
{ nxt_string("var a = [1,2]; a.a = 1; Object.freeze(a); a.a = 2"),
- nxt_string("TypeError: Cannot assign to read-only property 'a' of array") },
+ nxt_string("TypeError: Cannot assign to read-only property \"a\" of array") },
{ nxt_string("var a = Object.freeze([1,2]); a.a = 1"),
- nxt_string("TypeError: Cannot add property 'a', object is not extensible") },
+ nxt_string("TypeError: Cannot add property \"a\", object is not extensible") },
{ nxt_string("Object.defineProperty(function() {}, 'a', {value:1}).a"),
nxt_string("1") },
nxt_string("TypeError: object is not extensible") },
{ nxt_string("var f = function() {}; f.a = 1; Object.freeze(f); delete f.a"),
- nxt_string("TypeError: Cannot delete property 'a' of function") },
+ nxt_string("TypeError: Cannot delete property \"a\" of function") },
{ nxt_string("var f = function() {}; f.a = 1; Object.freeze(f); f.a = 2"),
- nxt_string("TypeError: Cannot assign to read-only property 'a' of function") },
+ nxt_string("TypeError: Cannot assign to read-only property \"a\" of function") },
{ nxt_string("var f = Object.freeze(function() {}); f.a = 1"),
- nxt_string("TypeError: Cannot add property 'a', object is not extensible") },
+ nxt_string("TypeError: Cannot add property \"a\", object is not extensible") },
{ nxt_string("Object.defineProperty(new Date(''), 'a', {value:1}).a"),
nxt_string("1") },
{ nxt_string("var d = new Date(''); d.a = 1; Object.freeze(d);"
"delete d.a"),
- nxt_string("TypeError: Cannot delete property 'a' of date") },
+ nxt_string("TypeError: Cannot delete property \"a\" of date") },
{ nxt_string("var d = new Date(''); d.a = 1; Object.freeze(d); d.a = 2"),
- nxt_string("TypeError: Cannot assign to read-only property 'a' of date") },
+ nxt_string("TypeError: Cannot assign to read-only property \"a\" of date") },
{ nxt_string("var d = Object.freeze(new Date('')); d.a = 1"),
- nxt_string("TypeError: Cannot add property 'a', object is not extensible") },
+ nxt_string("TypeError: Cannot add property \"a\", object is not extensible") },
{ nxt_string("Object.defineProperty(new RegExp(''), 'a', {value:1}).a"),
nxt_string("1") },
nxt_string("TypeError: object is not extensible") },
{ nxt_string("var r = new RegExp(''); r.a = 1; Object.freeze(r); delete r.a"),
- nxt_string("TypeError: Cannot delete property 'a' of regexp") },
+ nxt_string("TypeError: Cannot delete property \"a\" of regexp") },
{ nxt_string("var r = new RegExp(''); r.a = 1; Object.freeze(r); r.a = 2"),
- nxt_string("TypeError: Cannot assign to read-only property 'a' of regexp") },
+ nxt_string("TypeError: Cannot assign to read-only property \"a\" of regexp") },
{ nxt_string("var r = Object.freeze(new RegExp('')); r.a = 1"),
- nxt_string("TypeError: Cannot add property 'a', object is not extensible") },
+ nxt_string("TypeError: Cannot add property \"a\", object is not extensible") },
{ nxt_string("Object.isFrozen({a:1})"),
nxt_string("false") },
nxt_string("2") },
{ nxt_string("var o = Object.seal({a:1}); delete o.a"),
- nxt_string("TypeError: Cannot delete property 'a' of object") },
+ nxt_string("TypeError: Cannot delete property \"a\" of object") },
{ nxt_string("var o = Object.seal({a:1}); o.b = 1; o.b"),
- nxt_string("TypeError: Cannot add property 'b', object is not extensible") },
+ nxt_string("TypeError: Cannot add property \"b\", object is not extensible") },
{ nxt_string("var o = Object.seal(Object.create({a:1})); o.a = 2; o.a"),
- nxt_string("TypeError: Cannot add property 'a', object is not extensible") },
+ nxt_string("TypeError: Cannot add property \"a\", object is not extensible") },
{ nxt_string("var o = Object.seal({a:{b:1}}); o.a.b = 2; o.a.b"),
nxt_string("2") },
nxt_string("undefined") },
{ nxt_string("var o = Object.preventExtensions({a:1}); o.b = 1; o.b"),
- nxt_string("TypeError: Cannot add property 'b', object is not extensible") },
+ nxt_string("TypeError: Cannot add property \"b\", object is not extensible") },
{ nxt_string("Object.preventExtensions()"),
nxt_string("undefined") },
{ nxt_string("var o = JSON.parse('{\"a\":1}', "
" function(k, v) {return v.a.a;}); o"),
- nxt_string("TypeError: cannot get property 'a' of undefined") },
+ nxt_string("TypeError: cannot get property \"a\" of undefined") },
/* JSON.stringify() */
/* require(). */
{ nxt_string("require('unknown_module')"),
- nxt_string("Error: Cannot find module 'unknown_module'") },
+ nxt_string("Error: Cannot find module \"unknown_module\"") },
{ nxt_string("require()"),
nxt_string("TypeError: missing path") },
{ nxt_string("var fs = require('fs');"
"fs.readFile('/njs_unknown_path', {flag:'xx'}, function () {})"),
- nxt_string("TypeError: Unknown file open flags: 'xx'") },
+ nxt_string("TypeError: Unknown file open flags: \"xx\"") },
{ nxt_string("var fs = require('fs');"
"fs.readFile('/njs_unknown_path', {encoding:'ascii'}, function () {})"),
- nxt_string("TypeError: Unknown encoding: 'ascii'") },
+ nxt_string("TypeError: Unknown encoding: \"ascii\"") },
{ nxt_string("var fs = require('fs');"
"fs.readFile('/njs_unknown_path', 'ascii', function () {})"),
- nxt_string("TypeError: Unknown encoding: 'ascii'") },
+ nxt_string("TypeError: Unknown encoding: \"ascii\"") },
/* require('fs').readFileSync() */
{ nxt_string("var fs = require('fs');"
"fs.readFileSync('/njs_unknown_path', {flag:'xx'})"),
- nxt_string("TypeError: Unknown file open flags: 'xx'") },
+ nxt_string("TypeError: Unknown file open flags: \"xx\"") },
{ nxt_string("var fs = require('fs');"
"fs.readFileSync('/njs_unknown_path', {encoding:'ascii'})"),
- nxt_string("TypeError: Unknown encoding: 'ascii'") },
+ nxt_string("TypeError: Unknown encoding: \"ascii\"") },
{ nxt_string("var fs = require('fs');"
"fs.readFileSync('/njs_unknown_path', 'ascii')"),
- nxt_string("TypeError: Unknown encoding: 'ascii'") },
+ nxt_string("TypeError: Unknown encoding: \"ascii\"") },
{ nxt_string("var fs = require('fs');"
"fs.readFileSync('/njs_unknown_path', true)"),
{ nxt_string("var fs = require('fs');"
"fs.writeFile('/njs_unknown_path', '', {flag:'xx'}, function () {})"),
- nxt_string("TypeError: Unknown file open flags: 'xx'") },
+ nxt_string("TypeError: Unknown file open flags: \"xx\"") },
{ nxt_string("var fs = require('fs');"
"fs.writeFile('/njs_unknown_path', '', {encoding:'ascii'}, function () {})"),
- nxt_string("TypeError: Unknown encoding: 'ascii'") },
+ nxt_string("TypeError: Unknown encoding: \"ascii\"") },
{ nxt_string("var fs = require('fs');"
"fs.writeFile('/njs_unknown_path', '', 'ascii', function () {})"),
- nxt_string("TypeError: Unknown encoding: 'ascii'") },
+ nxt_string("TypeError: Unknown encoding: \"ascii\"") },
{ nxt_string("var fs = require('fs');"
"fs.writeFile('/njs_unknown_path', '', true, function () {})"),
{ nxt_string("var fs = require('fs');"
"fs.writeFileSync('/njs_unknown_path', '', {flag:'xx'})"),
- nxt_string("TypeError: Unknown file open flags: 'xx'") },
+ nxt_string("TypeError: Unknown file open flags: \"xx\"") },
{ nxt_string("var fs = require('fs');"
"fs.writeFileSync('/njs_unknown_path', '', {encoding:'ascii'})"),
- nxt_string("TypeError: Unknown encoding: 'ascii'") },
+ nxt_string("TypeError: Unknown encoding: \"ascii\"") },
{ nxt_string("var fs = require('fs');"
"fs.writeFileSync('/njs_unknown_path', '', 'ascii')"),
- nxt_string("TypeError: Unknown encoding: 'ascii'") },
+ nxt_string("TypeError: Unknown encoding: \"ascii\"") },
{ nxt_string("var fs = require('fs');"
"fs.writeFileSync('/njs_unknown_path', '', true)"),
nxt_string("TypeError: algorithm must be a string") },
{ nxt_string("var h = require('crypto').createHash('sha512')"),
- nxt_string("TypeError: not supported algorithm: 'sha512'") },
+ nxt_string("TypeError: not supported algorithm: \"sha512\"") },
{ nxt_string("var h = require('crypto').createHash('sha1');"
"h.update()"),
{ nxt_string("var h = require('crypto').createHash('sha1');"
"h.update('A').digest('latin1')"),
- nxt_string("TypeError: Unknown digest encoding: 'latin1'") },
+ nxt_string("TypeError: Unknown digest encoding: \"latin1\"") },
{ nxt_string("var h = require('crypto').createHash('sha1');"
"h.update('A').digest('hex'); h.digest('hex')"),
nxt_string("TypeError: algorithm must be a string") },
{ nxt_string("var h = require('crypto').createHmac('sha512', '')"),
- nxt_string("TypeError: not supported algorithm: 'sha512'") },
+ nxt_string("TypeError: not supported algorithm: \"sha512\"") },
{ nxt_string("var h = require('crypto').createHmac('sha1', [])"),
nxt_string("TypeError: key must be a string") },
key = (nxt_str_t *) data;
if (key->length == 5 && memcmp(key->start, "error", 5) == 0) {
- njs_vm_error(vm, "cannot set 'error' prop");
+ njs_vm_error(vm, "cannot set \"error\" prop");
return NXT_ERROR;
}
key = (nxt_str_t *) data;
if (key->length == 5 && memcmp(key->start, "error", 5) == 0) {
- njs_vm_error(vm, "cannot delete 'error' prop");
+ njs_vm_error(vm, "cannot delete \"error\" prop");
return NXT_ERROR;
}