Merge pull request #1549 from Naddiseo/master

Added DCE tests for all the bugs I've reported so far.
This commit is contained in:
Sebastian McKenzie 2015-05-15 23:08:32 +01:00
commit 9908e331b7
20 changed files with 183 additions and 0 deletions

View File

@ -0,0 +1,4 @@
class A {
constructor() { this.value = 12345; }
}
export default new A();

View File

@ -0,0 +1,3 @@
import aInstance from './imported';
assert.equal(aInstance.value, 12345);

View File

@ -0,0 +1,14 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var A = function A() {
babelHelpers.classCallCheck(this, A);
this.value = 12345;
};
exports["default"] = new A();
module.exports = exports["default"];

View File

@ -0,0 +1,4 @@
class A {
constructor() { this.value = 12345; }
}
export default new A();

View File

@ -0,0 +1,5 @@
class A {
f() { return 1235; }
}
let a = new A();

View File

@ -0,0 +1,5 @@
class A {
k() { return 12345; }
}
assert.equal((new A()).k(), 12345);

View File

@ -0,0 +1,17 @@
"use strict";
var A = (function () {
function A() {
babelHelpers.classCallCheck(this, A);
}
babelHelpers.createClass(A, [{
key: "f",
value: function f() {
return 1235;
}
}]);
return A;
})();
var a = new A();

View File

@ -0,0 +1,6 @@
'use strict';
var _y = require('y');
var _y2 = babelHelpers.interopRequireDefault(_y);

View File

@ -0,0 +1,3 @@
import x from 'y';
x.foo = function (err) {};

View File

@ -0,0 +1,5 @@
import x from 'y';
x.z = function (a) { return 1 + a; };
assert(x.z(x.value), 43);

View File

@ -0,0 +1,8 @@
'use strict';
var _y = require('y');
var _y2 = babelHelpers.interopRequireDefault(_y);
_y2['default'].foo = function (err) {};

View File

@ -0,0 +1,2 @@
let y = { value: 42 };
export default y;

View File

@ -0,0 +1,5 @@
function f(a) {
return !a;
}
export { f };

View File

@ -0,0 +1,11 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
function f(a) {
return !a;
}
exports.f = f;

View File

@ -0,0 +1,13 @@
function* x() {
for (let a of []) {
for (let b of a) {
yield 1;
}
}
}
function y() {
return [...x()];
}
export { y };

View File

@ -0,0 +1,42 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
function* x() {
var _arr = [];
for (var _i = 0; _i < _arr.length; _i++) {
var a = _arr[_i];var _iteratorNormalCompletion = true;
var _didIteratorError = false;
var _iteratorError = undefined;
try {
for (var _iterator = a[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
var b = _step.value;
yield 1;
}
} catch (err) {
_didIteratorError = true;
_iteratorError = err;
} finally {
try {
if (!_iteratorNormalCompletion && _iterator["return"]) {
_iterator["return"]();
}
} finally {
if (_didIteratorError) {
throw _iteratorError;
}
}
}
}
}
function y() {
return [].concat(babelHelpers.toConsumableArray(x()));
}
exports.y = y;

View File

@ -0,0 +1,7 @@
class X {
Y() {
return new X();
}
}
export { X };

View File

@ -0,0 +1,22 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var X = (function () {
function X() {
babelHelpers.classCallCheck(this, X);
}
babelHelpers.createClass(X, [{
key: "Y",
value: function Y() {
return new X();
}
}]);
return X;
})();
exports.X = X;

View File

@ -0,0 +1,6 @@
{
"externalHelpers": true,
"noCheckAst": true,
"blacklist": ["regenerator"],
"optional": ["minification.deadCodeElimination"]
}