UglifyJS/test/mocha/number-literal.js

24 lines
751 B
JavaScript
Raw Normal View History

2016-07-21 01:19:24 +00:00
var assert = require("assert");
2018-06-21 17:04:15 +00:00
var UglifyJS = require("../node");
2016-07-21 01:19:24 +00:00
2018-06-06 09:50:56 +00:00
describe("Number literals", function() {
2016-07-21 01:19:24 +00:00
it("Should not allow legacy octal literals in strict mode", function() {
var inputs = [
'"use strict";00;',
'"use strict"; var foo = 00;'
];
var test = function(input) {
return function() {
2018-06-21 17:04:15 +00:00
UglifyJS.parse(input);
2016-07-21 01:19:24 +00:00
}
2018-06-06 09:50:56 +00:00
};
2016-07-21 01:19:24 +00:00
var error = function(e) {
2018-06-21 17:04:15 +00:00
return e instanceof UglifyJS.JS_Parse_Error
2018-06-06 09:50:56 +00:00
&& e.message === "Legacy octal literals are not allowed in strict mode";
};
2016-07-21 01:19:24 +00:00
for (var i = 0; i < inputs.length; i++) {
assert.throws(test(inputs[i]), error, inputs[i]);
}
});
2018-06-06 09:50:56 +00:00
});