Socket
Socket
Sign inDemoInstall

empower

Package Overview
Dependencies
Maintainers
1
Versions
37
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

empower - npm Package Compare versions

Comparing version 0.11.0 to 1.0.0

40

CHANGELOG.md

@@ -1,2 +0,2 @@

## [0.11.0](https://github.com/twada/empower/releases/tag/v0.11.0) (2015-04-18)
## [1.0.0](https://github.com/power-assert-js/empower/releases/tag/v1.0.0) (2015-05-25)

@@ -6,11 +6,21 @@

* transfer to power-assert-js organization ([0cd9a89a](https://github.com/power-assert-js/empower/commit/0cd9a89ad3964c863e7f448ba46d565735850539))
* support `deepStrictEqual` and `notDeepStrictEqual` ([bbaa9121](https://github.com/power-assert-js/empower/commit/bbaa91211bc7779a94934165b0d827ec89df6c5c))
* use ponyfills for older browsers ([efea6e17](https://github.com/power-assert-js/empower/commit/efea6e173e28922eae7342d7e9f1f832992a99fd))
## [0.11.0](https://github.com/power-assert-js/empower/releases/tag/v0.11.0) (2015-04-18)
#### Features
* **empower:**
* ship npm module with built bundle for browsers ([e9448d3b](https://github.com/twada/empower/commit/e9448d3bfd4b44e64810cb2d1e18d6a4e2c6ba4b))
* ship npm module with built bundle for browsers ([e9448d3b](https://github.com/power-assert-js/empower/commit/e9448d3bfd4b44e64810cb2d1e18d6a4e2c6ba4b))
## [0.10.0](https://github.com/twada/empower/releases/tag/v0.10.0) (2014-11-11)
## [0.10.0](https://github.com/power-assert-js/empower/releases/tag/v0.10.0) (2014-11-11)
* **empower:**
* update escallmatch ([f7a0d970](https://github.com/twada/empower/commit/f7a0d970333cdec25aacaf3880473da5ccec24de))
* update escallmatch ([f7a0d970](https://github.com/power-assert-js/empower/commit/f7a0d970333cdec25aacaf3880473da5ccec24de))

@@ -22,3 +32,3 @@

* **empower:** power-assert output doesn't appear in Node 0.11.x ([53e882e0](https://github.com/twada/empower/commit/53e882e00ad3dd8b45f262ab14ac782ed582b954))
* **empower:** power-assert output doesn't appear in Node 0.11.x ([53e882e0](https://github.com/power-assert-js/empower/commit/53e882e00ad3dd8b45f262ab14ac782ed582b954))

@@ -36,9 +46,9 @@

* **empower:**
* [modularized by browserify](https://github.com/twada/empower/pull/12)
* use `escallmatch` module to describe target patterns ([533a21a0](https://github.com/twada/empower/commit/533a21a0374f23f5ca4e198c17d1e20f10d705fa))
* support assertion methods with three or more arguments ([d31dca86](https://github.com/twada/empower/commit/d31dca86de2b05ee88ca5df15579308368657d43))
* if not in patterns, do not empower assertion function itself ([1d73a756](https://github.com/twada/empower/commit/1d73a7560ef586a45a0a9259e57c143b3b60caaa))
* option `targetMethods` does not required any more ([8ffcc49f](https://github.com/twada/empower/commit/8ffcc49fcdb5523eb38e63a0e7cca34f752d9302))
* rename `saveContextOnFail` option to `saveContextOnRethrow` ([1f6133b2](https://github.com/twada/empower/commit/1f6133b24be672f32cfd3b66522a7d14ca5d22e1))
* rename `modifyMessageOnFail` option to `modifyMessageOnRethrow` ([0c8a88f0](https://github.com/twada/empower/commit/0c8a88f0592917ba15ac0c1bf21c8f39f39ab350))
* [modularized by browserify](https://github.com/power-assert-js/empower/pull/12)
* use `escallmatch` module to describe target patterns ([533a21a0](https://github.com/power-assert-js/empower/commit/533a21a0374f23f5ca4e198c17d1e20f10d705fa))
* support assertion methods with three or more arguments ([d31dca86](https://github.com/power-assert-js/empower/commit/d31dca86de2b05ee88ca5df15579308368657d43))
* if not in patterns, do not empower assertion function itself ([1d73a756](https://github.com/power-assert-js/empower/commit/1d73a7560ef586a45a0a9259e57c143b3b60caaa))
* option `targetMethods` does not required any more ([8ffcc49f](https://github.com/power-assert-js/empower/commit/8ffcc49fcdb5523eb38e63a0e7cca34f752d9302))
* rename `saveContextOnFail` option to `saveContextOnRethrow` ([1f6133b2](https://github.com/power-assert-js/empower/commit/1f6133b24be672f32cfd3b66522a7d14ca5d22e1))
* rename `modifyMessageOnFail` option to `modifyMessageOnRethrow` ([0c8a88f0](https://github.com/power-assert-js/empower/commit/0c8a88f0592917ba15ac0c1bf21c8f39f39ab350))

@@ -60,3 +70,3 @@

([1f6133b2](https://github.com/twada/empower/commit/1f6133b24be672f32cfd3b66522a7d14ca5d22e1))
([1f6133b2](https://github.com/power-assert-js/empower/commit/1f6133b24be672f32cfd3b66522a7d14ca5d22e1))

@@ -75,3 +85,3 @@ * `modifyMessageOnFail` option is renamed to `modifyMessageOnRethrow`

([0c8a88f0](https://github.com/twada/empower/commit/0c8a88f0592917ba15ac0c1bf21c8f39f39ab350))
([0c8a88f0](https://github.com/power-assert-js/empower/commit/0c8a88f0592917ba15ac0c1bf21c8f39f39ab350))

@@ -117,2 +127,2 @@ * option `targetMethods` does not required any more

([8ffcc49f](https://github.com/twada/empower/commit/8ffcc49fcdb5523eb38e63a0e7cca34f752d9302))
([8ffcc49f](https://github.com/power-assert-js/empower/commit/8ffcc49fcdb5523eb38e63a0e7cca34f752d9302))

@@ -1,29 +0,29 @@

var gulp = require('gulp'),
gutil = require('gulp-util'),
mocha = require('gulp-mocha'),
mochaPhantomJS = require('gulp-mocha-phantomjs'),
webserver = require('gulp-webserver'),
del = require('del'),
source = require('vinyl-source-stream'),
through = require('through2'),
browserify = require('browserify'),
derequire = require('gulp-derequire'),
dereserve = require('gulp-dereserve'),
config = {
bundle: {
standalone: 'empower',
srcFile: './index.js',
destDir: './build',
destName: 'empower.js'
},
coverage: {
filename: 'coverage.lcov'
},
test: {
base: './test/',
pattern: '**/*_test.js',
amd: 'test/test-amd.html',
browser: 'test/test-browser.html'
}
};
var gulp = require('gulp');
var gutil = require('gulp-util');
var mocha = require('gulp-mocha');
var mochaPhantomJS = require('gulp-mocha-phantomjs');
var webserver = require('gulp-webserver');
var del = require('del');
var source = require('vinyl-source-stream');
var through = require('through2');
var browserify = require('browserify');
var derequire = require('gulp-derequire');
var dereserve = require('gulp-dereserve');
var config = {
bundle: {
standalone: 'empower',
srcFile: './index.js',
destDir: './build',
destName: 'empower.js'
},
coverage: {
filename: 'coverage.lcov'
},
test: {
base: './test/',
pattern: '**/*_test.js',
amd: 'test/test-amd.html',
browser: 'test/test-browser.html'
}
};

@@ -58,8 +58,8 @@ function captureStdout (filespec) {

function runMochaWithBlanket() {
var blanket = require('./coverage/blanket'),
capt = captureStdout({
cwd: __dirname,
base: __dirname,
path: __dirname + '/' + config.coverage.filename
});
var blanket = require('./coverage/blanket');
var capt = captureStdout({
cwd: __dirname,
base: __dirname,
path: __dirname + '/' + config.coverage.filename
});
return gulp

@@ -66,0 +66,0 @@ .src(config.test.base + config.test.pattern, {read: false})

/**
* empower - Power Assert feature enhancer for assert function/object.
*
* https://github.com/twada/empower
* https://github.com/power-assert-js/empower
*
* Copyright (c) 2013-2015 Takuto Wada
* Licensed under the MIT license.
* https://github.com/twada/empower/blob/master/MIT-LICENSE.txt
* https://github.com/power-assert-js/empower/blob/master/MIT-LICENSE.txt
*/
var defaultOptions = require('./lib/default-options'),
Decorator = require('./lib/decorator'),
slice = Array.prototype.slice,
extend = require('xtend/mutable');
var defaultOptions = require('./lib/default-options');
var Decorator = require('./lib/decorator');
var create = require('object-create');
var slice = Array.prototype.slice;
var extend = require('xtend/mutable');

@@ -23,4 +24,4 @@ /**

function empower (assert, formatter, options) {
var typeOfAssert = (typeof assert),
config;
var typeOfAssert = (typeof assert);
var config;
if ((typeOfAssert !== 'object' && typeOfAssert !== 'function') || assert === null) {

@@ -44,3 +45,3 @@ throw new TypeError('empower argument should be a function or object.');

function empowerAssertObject (assertObject, formatter, config) {
var target = config.destructive ? assertObject : Object.create(assertObject);
var target = config.destructive ? assertObject : create(assertObject);
var decorator = new Decorator(target, formatter, config);

@@ -47,0 +48,0 @@ return extend(target, decorator.enhancement());

'use strict';
var slice = Array.prototype.slice;
var map = require('array-map');
var some = require('array-some');
function decorate (callSpec, decorator) {
var func = callSpec.func,
thisObj = callSpec.thisObj,
numArgsToCapture = callSpec.numArgsToCapture;
var func = callSpec.func;
var thisObj = callSpec.thisObj;
var numArgsToCapture = callSpec.numArgsToCapture;
return function decoratedAssert () {
var context, message, args = slice.apply(arguments);
if (some(args, isCaptured)) {
var values = map(args.slice(0, numArgsToCapture), function (arg) {
if (isNotCaptured(arg)) {
return arg;
}
if (!context) {
context = {
source: arg.source,
args: []
};
}
context.args.push({
value: arg.powerAssertContext.value,
events: arg.powerAssertContext.events
});
return arg.powerAssertContext.value;
});
if (args.every(isNotCaptured)) {
return func.apply(thisObj, args);
}
var values = args.slice(0, numArgsToCapture).map(function (arg) {
if (isNotCaptured(arg)) {
return arg;
if (numArgsToCapture === (args.length - 1)) {
message = args[args.length - 1];
}
if (!context) {
context = {
source: arg.source,
args: []
};
}
context.args.push({
value: arg.powerAssertContext.value,
events: arg.powerAssertContext.events
});
return arg.powerAssertContext.value;
});
if (numArgsToCapture === (args.length - 1)) {
message = args[args.length - 1];
var invocation = {
thisObj: thisObj,
func: func,
values: values,
message: message
};
return decorator.concreteAssert(invocation, context);
} else {
return func.apply(thisObj, args);
}
var invocation = {
thisObj: thisObj,
func: func,
values: values,
message: message
};
return decorator.concreteAssert(invocation, context);
};

@@ -46,0 +47,0 @@ }

'use strict';
var escallmatch = require('escallmatch'),
extend = require('xtend/mutable'),
capturable = require('./capturable'),
decorate = require('./decorate');
var escallmatch = require('escallmatch');
var extend = require('xtend/mutable');
var forEach = require('array-foreach');
var map = require('array-map');
var filter = require('array-filter');
var capturable = require('./capturable');
var decorate = require('./decorate');

@@ -13,3 +16,3 @@

this.config = config;
this.matchers = config.patterns.map(escallmatch);
this.matchers = map(config.patterns, escallmatch);
this.eagerEvaluation = !(config.modifyMessageOnRethrow || config.saveContextOnRethrow);

@@ -21,3 +24,3 @@ }

var container = this.container();
this.matchers.filter(methodCall).forEach(function (matcher) {
forEach(filter(this.matchers, methodCall), function (matcher) {
var methodName = detectMethodName(matcher.calleeAst());

@@ -40,3 +43,3 @@ if (typeof that.receiver[methodName] === 'function') {

if (typeof this.receiver === 'function') {
var candidates = this.matchers.filter(functionCall);
var candidates = filter(this.matchers, functionCall);
if (candidates.length === 1) {

@@ -55,6 +58,6 @@ var callSpec = {

Decorator.prototype.concreteAssert = function (invocation, context) {
var func = invocation.func,
thisObj = invocation.thisObj,
args = invocation.values,
message = invocation.message;
var func = invocation.func;
var thisObj = invocation.thisObj;
var args = invocation.values;
var message = invocation.message;
if (this.eagerEvaluation) {

@@ -98,5 +101,5 @@ var poweredMessage = this.buildPowerAssertText(message, context);

function numberOfArgumentsToCapture (matcher) {
var argSpecs = matcher.argumentSignatures(),
len = argSpecs.length,
lastArg;
var argSpecs = matcher.argumentSignatures();
var len = argSpecs.length;
var lastArg;
if (0 < len) {

@@ -103,0 +106,0 @@ lastArg = argSpecs[len - 1];

@@ -16,5 +16,7 @@ 'use strict';

'assert.deepEqual(actual, expected, [message])',
'assert.notDeepEqual(actual, expected, [message])'
'assert.notDeepEqual(actual, expected, [message])',
'assert.deepStrictEqual(actual, expected, [message])',
'assert.notDeepStrictEqual(actual, expected, [message])'
]
};
};

@@ -1,2 +0,2 @@

Copyright (c) 2013-2015 Takuto Wada, https://github.com/twada/empower
Copyright (c) 2013-2015 Takuto Wada, https://github.com/power-assert-js/empower

@@ -3,0 +3,0 @@ Permission is hereby granted, free of charge, to any person obtaining

{
"name": "empower",
"description": "Power Assert feature enhancer for assert function/object",
"version": "0.11.0",
"version": "1.0.0",
"author": {

@@ -11,24 +11,29 @@ "name": "Takuto Wada",

"bugs": {
"url": "http://github.com/twada/empower/issues"
"url": "http://github.com/power-assert-js/empower/issues"
},
"dependencies": {
"escallmatch": "^1.3.1",
"array-filter": "^1.0.0",
"array-foreach": "^1.0.1",
"array-map": "0.0.0",
"array-some": "^1.0.0",
"escallmatch": "^1.4.1",
"object-create": "^0.1.0",
"xtend": "^4.0.0"
},
"devDependencies": {
"acorn": "^1.0.3",
"blanket": "^1.1.6",
"browserify": "^9.0.8",
"acorn": "^2.0.1",
"blanket": "^1.1.7",
"browserify": "^10.2.1",
"buster-assertions": "^0.10.4",
"del": "^1.1.1",
"del": "^1.2.0",
"escodegen": "^1.6.1",
"espower": "^0.11.0",
"espower": "^1.0.0",
"gulp": "^3.8.11",
"gulp-derequire": "^2.0.0",
"gulp-derequire": "^2.1.0",
"gulp-dereserve": "^0.2.0",
"gulp-mocha": "^2.0.1",
"gulp-mocha": "^2.1.0",
"gulp-mocha-phantomjs": "^0.6.1",
"gulp-util": "^3.0.4",
"gulp-webserver": "^0.9.0",
"mocha": "^2.2.4",
"gulp-webserver": "^0.9.1",
"mocha": "^2.2.5",
"mocha-lcov-reporter": "^0.0.2",

@@ -52,3 +57,3 @@ "through2": "^1.1.1",

],
"homepage": "http://github.com/twada/empower",
"homepage": "http://github.com/power-assert-js/empower",
"keywords": [

@@ -61,10 +66,7 @@ "power-assert",

],
"license": {
"type": "MIT",
"url": "https://github.com/twada/empower/blob/master/MIT-LICENSE.txt"
},
"license": "MIT",
"main": "./index.js",
"repository": {
"type": "git",
"url": "http://github.com/twada/empower.git"
"url": "http://github.com/power-assert-js/empower.git"
},

@@ -75,4 +77,5 @@ "scripts": {

"unit": "gulp unit",
"watch": "gulp watch",
"coveralls": "gulp coverage && cat ./coverage.lcov | coveralls"
}
}

@@ -19,3 +19,3 @@ empower

---------------------------------------
`empower` is a core module of [power-assert](http://github.com/twada/power-assert) family. `empower` enhances standard `assert` function or any assert-like object to work with power-assert feature added code instrumented by [espower](http://github.com/twada/espower).
`empower` is a core module of [power-assert](http://github.com/power-assert-js/power-assert) family. `empower` enhances standard `assert` function or any assert-like object to work with power-assert feature added code instrumented by [espower](http://github.com/power-assert-js/espower).

@@ -26,3 +26,3 @@

Please note that `empower` is a beta version product. Pull-requests, issue reports and patches are always welcomed. See [power-assert](http://github.com/twada/power-assert) project for more documentation.
Pull-requests, issue reports and patches are always welcomed. See [power-assert](http://github.com/power-assert-js/power-assert) project for more documentation.

@@ -32,3 +32,3 @@

---------------------------------------
See [CHANGELOG](https://github.com/twada/empower/blob/master/CHANGELOG.md)
See [CHANGELOG](https://github.com/power-assert-js/empower/blob/master/CHANGELOG.md)

@@ -45,3 +45,3 @@

`empower` function takes function or object(`originalAssert`) and `formatter` function created by [power-assert-formatter](http://github.com/twada/power-assert-formatter) then returns PowerAssert feature added function/object base on `originalAssert`.
`empower` function takes function or object(`originalAssert`) and `formatter` function created by [power-assert-formatter](http://github.com/power-assert-js/power-assert-formatter) then returns PowerAssert feature added function/object base on `originalAssert`.
If `destructive` option is falsy, `originalAssert` will be unchanged. If `destructive` option is truthy, `originalAssert` will be manipulated directly and returned `enhancedAssert` will be the same instance of `originalAssert`.

@@ -56,3 +56,3 @@

`originalAssert` is an instance of standard `assert` function or any assert-like object. see [SUPPORTED ASSERTION LIBRARIES](https://github.com/twada/empower#supported-assertion-libraries) and [ASSERTION LIBRARIES KNOWN TO WORK](https://github.com/twada/empower#assertion-libraries-known-to-work) section. Be careful that `originalAssert` will be manipulated directly if `destructive` option is truthy.
`originalAssert` is an instance of standard `assert` function or any assert-like object. see [SUPPORTED ASSERTION LIBRARIES](https://github.com/power-assert-js/empower#supported-assertion-libraries) and [ASSERTION LIBRARIES KNOWN TO WORK](https://github.com/power-assert-js/empower#assertion-libraries-known-to-work) section. Be careful that `originalAssert` will be manipulated directly if `destructive` option is truthy.

@@ -66,3 +66,3 @@

formatter function created by [power-assert-formatter](http://github.com/twada/power-assert-formatter).
formatter function created by [power-assert-formatter](http://github.com/power-assert-js/power-assert-formatter).

@@ -133,3 +133,5 @@

'assert.deepEqual(actual, expected, [message])',
'assert.notDeepEqual(actual, expected, [message])'
'assert.notDeepEqual(actual, expected, [message])',
'assert.deepStrictEqual(actual, expected, [message])',
'assert.notDeepStrictEqual(actual, expected, [message])'
]

@@ -160,3 +162,5 @@ ```

'assert.deepEqual(actual, expected, [message])',
'assert.notDeepEqual(actual, expected, [message])'
'assert.notDeepEqual(actual, expected, [message])',
'assert.deepStrictEqual(actual, expected, [message])',
'assert.notDeepStrictEqual(actual, expected, [message])'
]

@@ -215,3 +219,3 @@ }

---------------------------------------
Licensed under the [MIT](https://github.com/twada/empower/blob/master/MIT-LICENSE.txt) license.
Licensed under the [MIT](https://github.com/power-assert-js/empower/blob/master/MIT-LICENSE.txt) license.

@@ -225,18 +229,18 @@

[travis-url]: http://travis-ci.org/twada/empower
[travis-image]: https://secure.travis-ci.org/twada/empower.svg?branch=master
[travis-url]: http://travis-ci.org/power-assert-js/empower
[travis-image]: https://secure.travis-ci.org/power-assert-js/empower.svg?branch=master
[depstat-url]: https://gemnasium.com/twada/empower
[depstat-image]: https://gemnasium.com/twada/empower.svg
[depstat-url]: https://gemnasium.com/power-assert-js/empower
[depstat-image]: https://gemnasium.com/power-assert-js/empower.svg
[license-url]: https://github.com/twada/empower/blob/master/MIT-LICENSE.txt
[license-url]: https://github.com/power-assert-js/empower/blob/master/MIT-LICENSE.txt
[license-image]: http://img.shields.io/badge/license-MIT-brightgreen.svg?style=flat
[codeclimate-url]: https://codeclimate.com/github/twada/empower
[codeclimate-image]: https://codeclimate.com/github/twada/empower/badges/gpa.svg
[codeclimate-url]: https://codeclimate.com/github/power-assert-js/empower
[codeclimate-image]: https://codeclimate.com/github/power-assert-js/empower/badges/gpa.svg
[coverage-url]: https://coveralls.io/r/twada/empower?branch=master
[coverage-image]: https://coveralls.io/repos/twada/empower/badge.svg?branch=master
[coverage-url]: https://coveralls.io/r/power-assert-js/empower?branch=master
[coverage-image]: https://coveralls.io/repos/power-assert-js/empower/badge.svg?branch=master
[gulp-url]: http://gulpjs.com/
[gulp-image]: http://img.shields.io/badge/built_with-gulp-brightgreen.svg

@@ -48,3 +48,5 @@ (function (root, factory) {

'assert.deepEqual(actual, expected, [message])',
'assert.notDeepEqual(actual, expected, [message])'
'assert.notDeepEqual(actual, expected, [message])',
'assert.deepStrictEqual(actual, expected, [message])',
'assert.notDeepStrictEqual(actual, expected, [message])'
]);

@@ -51,0 +53,0 @@ });

@@ -345,3 +345,5 @@ (function (root, factory) {

'assert.deepEqual(actual, expected, [message])',
'assert.notDeepEqual(actual, expected, [message])'
'assert.notDeepEqual(actual, expected, [message])',
'assert.deepStrictEqual(actual, expected, [message])',
'assert.notDeepStrictEqual(actual, expected, [message])'
];

@@ -348,0 +350,0 @@ var assert = empower(baseAssert, fakeFormatter, { patterns: patterns });

Sorry, the diff of this file is too big to display

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc