Browse Source

Consistently require `new` for classes

To be forward compatible with ES2015 classes.
babel-plugin-for-integration-tests
Sindre Sorhus 9 years ago
parent
commit
7bb088561e
  1. 2
      api.js
  2. 2
      lib/ava-error.js
  3. 2
      lib/hook.js
  4. 2
      lib/logger.js
  5. 2
      lib/runner.js
  6. 2
      lib/test.js
  7. 6
      test/observable.js
  8. 6
      test/promise.js
  9. 11
      test/runner.js
  10. 12
      test/test.js

2
api.js

@ -20,7 +20,7 @@ var CachingPrecompiler = require('./lib/caching-precompiler');
function Api(files, options) {
if (!(this instanceof Api)) {
return new Api(files, options);
throw new TypeError('Class constructor Api cannot be invoked without \'new\'');
}
EventEmitter.call(this);

2
lib/ava-error.js

@ -2,7 +2,7 @@
function AvaError(message) {
if (!(this instanceof AvaError)) {
return new AvaError(message);
throw new TypeError('Class constructor AvaError cannot be invoked without \'new\'');
}
this.message = message;

2
lib/hook.js

@ -4,7 +4,7 @@ module.exports = Hook;
function Hook(title, fn) {
if (!(this instanceof Hook)) {
return new Hook(title, fn);
throw new TypeError('Class constructor Hook cannot be invoked without \'new\'');
}
if (typeof title === 'function') {

2
lib/logger.js

@ -2,7 +2,7 @@
function Logger() {
if (!(this instanceof Logger)) {
return new Logger();
throw new TypeError('Class constructor Logger cannot be invoked without \'new\'');
}
Object.keys(Logger.prototype).forEach(function (key) {

2
lib/runner.js

@ -29,7 +29,7 @@ var chainableMethods = {
function Runner() {
if (!(this instanceof Runner)) {
return new Runner();
throw new TypeError('Class constructor Runner cannot be invoked without \'new\'');
}
EventEmitter.call(this);

2
lib/test.js

@ -13,7 +13,7 @@ var globals = require('./globals');
function Test(title, fn, contextRef, report) {
if (!(this instanceof Test)) {
return new Test(title, fn, contextRef, report);
throw new TypeError('Class constructor Test cannot be invoked without \'new\'');
}
if (typeof title === 'function') {

6
test/observable.js

@ -1,16 +1,16 @@
'use strict';
var test = require('tap').test;
var _ava = require('../lib/test');
var Test = require('../lib/test');
var Observable = require('./fixture/observable');
function ava(fn) {
var a = _ava(fn);
var a = new Test(fn);
a.metadata = {callback: false};
return a;
}
ava.cb = function (fn) {
var a = _ava(fn);
var a = new Test(fn);
a.metadata = {callback: true};
return a;
};

6
test/promise.js

@ -1,16 +1,16 @@
'use strict';
var Promise = require('bluebird');
var test = require('tap').test;
var _ava = require('../lib/test');
var Test = require('../lib/test');
function ava(fn) {
var a = _ava(fn);
var a = new Test(fn);
a.metadata = {callback: false};
return a;
}
ava.cb = function (fn) {
var a = _ava(fn);
var a = new Test(fn);
a.metadata = {callback: true};
return a;
};

11
test/runner.js

@ -1,15 +1,8 @@
'use strict';
var test = require('tap').test;
var runner = require('../lib/runner');
// var Test = require('../lib/test');
var Runner = runner;
// var mockTitle = 'mock title';
var noop = function () {};
var Runner = require('../lib/runner');
test('returns new instance of runner without "new"', function (t) {
t.ok(runner({}) instanceof runner);
t.end();
});
var noop = function () {};
test('runner emits a "test" event', function (t) {
var runner = new Runner();

12
test/test.js

@ -3,16 +3,16 @@ var test = require('tap').test;
var Promise = global.Promise = require('bluebird');
var delay = require('delay');
var isPromise = require('is-promise');
var _ava = require('../lib/test');
var Test = require('../lib/test');
function ava() {
var t = _ava.apply(null, arguments);
function ava(title, fn, contextRef, report) {
var t = new Test(title, fn, contextRef, report);
t.metadata = {callback: false};
return t;
}
ava.cb = function () {
var t = _ava.apply(null, arguments);
ava.cb = function (title, fn, contextRef, report) {
var t = new Test(title, fn, contextRef, report);
t.metadata = {callback: true};
return t;
};
@ -513,7 +513,7 @@ test('assertions return promises', function (t) {
});
test('contextRef', function (t) {
new _ava('foo',
new Test('foo',
function (a) {
t.same(a.context, {foo: 'bar'});
t.end();

Loading…
Cancel
Save