README
Summary
Light weight aspect oriented library which enable validating functions based on contracts. the library also enables to define pre and post activities before function. or use your a predefined skin ( or more than one) which will be activated before and after the function body. By proactively providing contract based API for your public API, you enable a reliable dependency to and from your packages.
Installation
To use with node:
$ npm install skinjs
Documentation
add the required library in your code:
var AV = aspect;var AB = AVaspectBuilder;var C = contracts;
Then you can provide a contract to your function and attach before and after functions:
const aspect = AV;const log = console;thisx = "yooo";const func = aspect ;
you can also provide a skin ( or more then one) that will be activated before and after the function:
const aspect = AV; { for let i=0;i<1000000;i++ {} return "done";} const perfSkin = { const atom = {}; atomcontext = atom; atom { thisstart = ; }; atom { console; }; return atom; };const func = aspect ;
Running The Test Suite
Console:
To run the test suite from the console, you need to have mocha
installed:
$ npm install -g mocha
Then from the root of the project, you can just call
$ mocha
Alternately, if you've installed the dependencies, via:
$ npm install
then you can run the tests (and get detailed output) by running:
$ gulp test