c2fo/nools

✓8.0
✓9.0
✓10.0
✓20.0
✓21.0
✓22.0
✓23.0
✓24.0
✓25.0
✓14.0
✓15.0
✓16.0
✓17.0
✓18.0
✓19.0
6.0
6.0
6.0
npm http GET https://registry.npmjs.org/grunt npm http GET https://registry.npmjs.org/string-extended npm http GET https://registry.npmjs.org/array-extended npm http GET https://registry.npmjs.org/declare.js npm http GET https://registry.npmjs.org/function-extended npm http GET https://registry.npmjs.org/date-extended npm http GET https://registry.npmjs.org/promise-extended npm http GET https://registry.npmjs.org/object-extended npm http GET https://registry.npmjs.org/leafy npm http GET https://registry.npmjs.org/ht npm http GET https://registry.npmjs.org/commander npm http GET https://registry.npmjs.org/it npm http GET https://registry.npmjs.org/jison npm http GET https://registry.npmjs.org/grunt-contrib-uglify npm http GET https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/grunt-browserify npm http GET https://registry.npmjs.org/browserify npm http GET https://registry.npmjs.org/grunt-it npm http GET https://registry.npmjs.org/extended npm http GET https://registry.npmjs.org/is-extended npm http 200 https://registry.npmjs.org/function-extended npm http 200 https://registry.npmjs.org/string-extended npm http GET https://registry.npmjs.org/function-extended/-/function-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/declare.js npm http GET https://registry.npmjs.org/string-extended/-/string-extended-0.0.5.tgz npm http GET https://registry.npmjs.org/declare.js/-/declare.js-0.0.4.tgz npm http 200 https://registry.npmjs.org/array-extended npm http GET https://registry.npmjs.org/array-extended/-/array-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/date-extended npm http GET https://registry.npmjs.org/date-extended/-/date-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/promise-extended npm http GET https://registry.npmjs.org/promise-extended/-/promise-extended-0.0.6.tgz npm http 200 https://registry.npmjs.org/leafy npm http GET https://registry.npmjs.org/leafy/-/leafy-0.0.2.tgz npm http 200 https://registry.npmjs.org/grunt npm http GET https://registry.npmjs.org/grunt/-/grunt-0.4.1.tgz npm http 200 https://registry.npmjs.org/ht npm http GET https://registry.npmjs.org/ht/-/ht-0.0.2.tgz npm http 200 https://registry.npmjs.org/commander npm http GET https://registry.npmjs.org/commander/-/commander-1.1.1.tgz npm http 200 https://registry.npmjs.org/object-extended npm http 200 https://registry.npmjs.org/it npm http GET https://registry.npmjs.org/object-extended/-/object-extended-0.0.5.tgz npm http GET https://registry.npmjs.org/it/-/it-0.2.6.tgz npm http 200 https://registry.npmjs.org/jison npm http GET https://registry.npmjs.org/jison/-/jison-0.4.4.tgz npm http 200 https://registry.npmjs.org/grunt-it npm http GET https://registry.npmjs.org/grunt-it/-/grunt-it-0.3.1.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.5.4.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-uglify npm http GET https://registry.npmjs.org/grunt-contrib-uglify/-/grunt-contrib-uglify-0.2.1.tgz npm http 200 https://registry.npmjs.org/grunt-browserify npm http GET https://registry.npmjs.org/grunt-browserify/-/grunt-browserify-1.0.2.tgz npm http 200 https://registry.npmjs.org/extended npm http GET https://registry.npmjs.org/extended/-/extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/is-extended npm http GET https://registry.npmjs.org/is-extended/-/is-extended-0.0.8.tgz npm http 200 https://registry.npmjs.org/function-extended/-/function-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/string-extended/-/string-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/declare.js/-/declare.js-0.0.4.tgz npm http 200 https://registry.npmjs.org/date-extended/-/date-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/array-extended/-/array-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/leafy/-/leafy-0.0.2.tgz npm http 200 https://registry.npmjs.org/promise-extended/-/promise-extended-0.0.6.tgz npm http 200 https://registry.npmjs.org/grunt/-/grunt-0.4.1.tgz npm http 200 https://registry.npmjs.org/ht/-/ht-0.0.2.tgz npm http 200 https://registry.npmjs.org/commander/-/commander-1.1.1.tgz npm http 200 https://registry.npmjs.org/object-extended/-/object-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/jison/-/jison-0.4.4.tgz npm http 200 https://registry.npmjs.org/it/-/it-0.2.6.tgz npm http 200 https://registry.npmjs.org/browserify npm http GET https://registry.npmjs.org/browserify/-/browserify-2.14.2.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.5.4.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-uglify/-/grunt-contrib-uglify-0.2.1.tgz npm http 200 https://registry.npmjs.org/grunt-browserify/-/grunt-browserify-1.0.2.tgz npm http 200 https://registry.npmjs.org/grunt-it/-/grunt-it-0.3.1.tgz npm http 200 https://registry.npmjs.org/extended/-/extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/browserify/-/browserify-2.14.2.tgz npm http 200 https://registry.npmjs.org/is-extended/-/is-extended-0.0.8.tgz npm http GET https://registry.npmjs.org/keypress npm http GET https://registry.npmjs.org/array-extended/0.0.4 npm http GET https://registry.npmjs.org/jshint npm http GET https://registry.npmjs.org/JSONSelect/0.4.0 npm http GET https://registry.npmjs.org/esprima npm http GET https://registry.npmjs.org/extender npm http GET https://registry.npmjs.org/uglify-js npm http GET https://registry.npmjs.org/grunt-lib-contrib npm http GET https://registry.npmjs.org/browserify-shim npm http GET https://registry.npmjs.org/escodegen/0.0.21 npm http GET https://registry.npmjs.org/jison-lex npm http GET https://registry.npmjs.org/ebnf-parser npm http GET https://registry.npmjs.org/lex-parser npm http GET https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/browserify npm http GET https://registry.npmjs.org/nomnom/1.5.2 npm http GET https://registry.npmjs.org/async npm http GET https://registry.npmjs.org/coffee-script npm http GET https://registry.npmjs.org/colors npm http GET https://registry.npmjs.org/dateformat/1.0.2-1.2.3 npm http GET https://registry.npmjs.org/eventemitter2 npm http GET https://registry.npmjs.org/findup-sync npm http GET https://registry.npmjs.org/glob npm http GET https://registry.npmjs.org/hooker npm http GET https://registry.npmjs.org/iconv-lite npm http GET https://registry.npmjs.org/minimatch npm http GET https://registry.npmjs.org/nopt npm http GET https://registry.npmjs.org/rimraf npm http GET https://registry.npmjs.org/lodash npm http GET https://registry.npmjs.org/underscore.string npm http GET https://registry.npmjs.org/which npm http GET https://registry.npmjs.org/js-yaml npm http GET https://registry.npmjs.org/module-deps npm http GET https://registry.npmjs.org/browser-pack npm http GET https://registry.npmjs.org/shell-quote npm http GET https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/duplexer npm http GET https://registry.npmjs.org/concat-stream npm http GET https://registry.npmjs.org/insert-module-globals npm http GET https://registry.npmjs.org/syntax-error npm http GET https://registry.npmjs.org/browser-resolve npm http GET https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/optimist npm http GET https://registry.npmjs.org/JSONStream npm http GET https://registry.npmjs.org/umd npm http 200 https://registry.npmjs.org/array-extended/0.0.4 npm http 200 https://registry.npmjs.org/JSONSelect/0.4.0 npm http GET https://registry.npmjs.org/array-extended/-/array-extended-0.0.4.tgz npm http GET https://registry.npmjs.org/JSONSelect/-/JSONSelect-0.4.0.tgz npm http 200 https://registry.npmjs.org/keypress npm http GET https://registry.npmjs.org/keypress/-/keypress-0.1.0.tgz npm http 200 https://registry.npmjs.org/esprima npm http GET https://registry.npmjs.org/esprima/-/esprima-1.0.3.tgz npm http 200 https://registry.npmjs.org/grunt-lib-contrib npm http 200 https://registry.npmjs.org/jshint npm http GET https://registry.npmjs.org/grunt-lib-contrib/-/grunt-lib-contrib-0.6.1.tgz npm http 200 https://registry.npmjs.org/extender npm http GET https://registry.npmjs.org/jshint/-/jshint-2.0.1.tgz npm http GET https://registry.npmjs.org/extender/-/extender-0.0.7.tgz npm http 200 https://registry.npmjs.org/escodegen/0.0.21 npm http GET https://registry.npmjs.org/escodegen/-/escodegen-0.0.21.tgz npm http 200 https://registry.npmjs.org/jison-lex npm http GET https://registry.npmjs.org/jison-lex/-/jison-lex-0.2.0.tgz npm http 200 https://registry.npmjs.org/ebnf-parser npm http 200 https://registry.npmjs.org/browserify-shim npm http GET https://registry.npmjs.org/ebnf-parser/-/ebnf-parser-0.1.1.tgz npm http GET https://registry.npmjs.org/browserify-shim/-/browserify-shim-2.0.3.tgz npm http 304 https://registry.npmjs.org/browserify npm http 304 https://registry.npmjs.org/grunt-contrib-jshint npm http 304 https://registry.npmjs.org/grunt-contrib-jshint npm http 200 https://registry.npmjs.org/lex-parser npm http GET https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.4.3.tgz npm http GET https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.3.0.tgz npm http GET https://registry.npmjs.org/lex-parser/-/lex-parser-0.1.0.tgz npm http GET https://registry.npmjs.org/browserify/-/browserify-2.12.5.tgz npm http 200 https://registry.npmjs.org/nomnom/1.5.2 npm http 200 https://registry.npmjs.org/colors npm http 200 https://registry.npmjs.org/uglify-js npm http GET https://registry.npmjs.org/colors/-/colors-0.6.0-1.tgz npm http GET https://registry.npmjs.org/nomnom/-/nomnom-1.5.2.tgz npm http 200 https://registry.npmjs.org/coffee-script npm http GET https://registry.npmjs.org/uglify-js/-/uglify-js-2.3.6.tgz npm http GET https://registry.npmjs.org/coffee-script/-/coffee-script-1.3.3.tgz npm http 200 https://registry.npmjs.org/dateformat/1.0.2-1.2.3 npm http GET https://registry.npmjs.org/dateformat/-/dateformat-1.0.2-1.2.3.tgz npm http 200 https://registry.npmjs.org/findup-sync npm http GET https://registry.npmjs.org/findup-sync/-/findup-sync-0.1.2.tgz npm http 200 https://registry.npmjs.org/hooker npm http GET https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz npm http 200 https://registry.npmjs.org/eventemitter2 npm http GET https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.11.tgz npm http 200 https://registry.npmjs.org/iconv-lite npm http GET https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.2.9.tgz npm http 200 https://registry.npmjs.org/glob npm http GET https://registry.npmjs.org/glob/-/glob-3.1.21.tgz npm http 200 https://registry.npmjs.org/nopt npm http GET https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz npm http 200 https://registry.npmjs.org/rimraf npm http GET https://registry.npmjs.org/rimraf/-/rimraf-2.0.3.tgz npm http 200 https://registry.npmjs.org/async npm http 200 https://registry.npmjs.org/minimatch npm http 200 https://registry.npmjs.org/which npm http 200 https://registry.npmjs.org/underscore.string npm http GET https://registry.npmjs.org/async/-/async-0.1.22.tgz npm http GET https://registry.npmjs.org/which/-/which-1.0.5.tgz npm http GET https://registry.npmjs.org/minimatch/-/minimatch-0.2.12.tgz npm http GET https://registry.npmjs.org/underscore.string/-/underscore.string-2.2.0rc.tgz npm http 200 https://registry.npmjs.org/lodash npm http 200 https://registry.npmjs.org/js-yaml npm http 200 https://registry.npmjs.org/shell-quote npm http 200 https://registry.npmjs.org/browser-pack npm http GET https://registry.npmjs.org/lodash/-/lodash-0.9.2.tgz npm http GET https://registry.npmjs.org/js-yaml/-/js-yaml-2.0.5.tgz npm http GET https://registry.npmjs.org/shell-quote/-/shell-quote-0.0.1.tgz npm http GET https://registry.npmjs.org/browser-pack/-/browser-pack-0.8.1.tgz npm http 200 https://registry.npmjs.org/through npm http 200 https://registry.npmjs.org/module-deps npm http 200 https://registry.npmjs.org/duplexer npm http GET https://registry.npmjs.org/through/-/through-2.2.7.tgz npm http GET https://registry.npmjs.org/module-deps/-/module-deps-0.8.0.tgz npm http 200 https://registry.npmjs.org/concat-stream npm http GET https://registry.npmjs.org/duplexer/-/duplexer-0.0.4.tgz npm http 200 https://registry.npmjs.org/insert-module-globals npm http GET https://registry.npmjs.org/concat-stream/-/concat-stream-0.1.1.tgz npm http 200 https://registry.npmjs.org/syntax-error npm http GET https://registry.npmjs.org/syntax-error/-/syntax-error-0.0.1.tgz npm http 200 https://registry.npmjs.org/browser-resolve npm http GET https://registry.npmjs.org/browser-resolve/-/browser-resolve-0.1.1.tgz npm http 200 https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/inherits/-/inherits-1.0.0.tgz npm http 200 https://registry.npmjs.org/array-extended/-/array-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/umd npm http 200 https://registry.npmjs.org/optimist npm http GET https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-0.2.1.tgz npm http GET https://registry.npmjs.org/umd/-/umd-1.1.1.tgz npm http 200 https://registry.npmjs.org/JSONSelect/-/JSONSelect-0.4.0.tgz npm http 200 https://registry.npmjs.org/keypress/-/keypress-0.1.0.tgz npm http GET https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz npm http 200 https://registry.npmjs.org/esprima/-/esprima-1.0.3.tgz npm http 200 https://registry.npmjs.org/grunt-lib-contrib/-/grunt-lib-contrib-0.6.1.tgz npm http 200 https://registry.npmjs.org/JSONStream npm http GET https://registry.npmjs.org/JSONStream/-/JSONStream-0.4.4.tgz npm http 200 https://registry.npmjs.org/jshint/-/jshint-2.0.1.tgz npm http 200 https://registry.npmjs.org/escodegen/-/escodegen-0.0.21.tgz npm http 200 https://registry.npmjs.org/jison-lex/-/jison-lex-0.2.0.tgz npm http 200 https://registry.npmjs.org/extender/-/extender-0.0.7.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.4.3.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.3.0.tgz npm http 200 https://registry.npmjs.org/ebnf-parser/-/ebnf-parser-0.1.1.tgz npm http 200 https://registry.npmjs.org/browserify-shim/-/browserify-shim-2.0.3.tgz npm http 200 https://registry.npmjs.org/browserify/-/browserify-2.12.5.tgz npm http 200 https://registry.npmjs.org/nomnom/-/nomnom-1.5.2.tgz npm http 200 https://registry.npmjs.org/lex-parser/-/lex-parser-0.1.0.tgz npm http 200 https://registry.npmjs.org/colors/-/colors-0.6.0-1.tgz npm http 200 https://registry.npmjs.org/dateformat/-/dateformat-1.0.2-1.2.3.tgz npm http 200 https://registry.npmjs.org/uglify-js/-/uglify-js-2.3.6.tgz npm http 200 https://registry.npmjs.org/findup-sync/-/findup-sync-0.1.2.tgz npm http 200 https://registry.npmjs.org/coffee-script/-/coffee-script-1.3.3.tgz npm http 200 https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz npm http 200 https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.11.tgz npm http 200 https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.2.9.tgz npm http 200 https://registry.npmjs.org/rimraf/-/rimraf-2.0.3.tgz npm http 200 https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz npm http 200 https://registry.npmjs.org/glob/-/glob-3.1.21.tgz npm http 200 https://registry.npmjs.org/async/-/async-0.1.22.tgz npm http 200 https://registry.npmjs.org/minimatch/-/minimatch-0.2.12.tgz npm http 200 https://registry.npmjs.org/which/-/which-1.0.5.tgz npm http 200 https://registry.npmjs.org/underscore.string/-/underscore.string-2.2.0rc.tgz npm http GET https://registry.npmjs.org/jshint npm http 200 https://registry.npmjs.org/js-yaml/-/js-yaml-2.0.5.tgz npm http 200 https://registry.npmjs.org/lodash/-/lodash-0.9.2.tgz npm http 200 https://registry.npmjs.org/shell-quote/-/shell-quote-0.0.1.tgz npm http 200 https://registry.npmjs.org/browser-pack/-/browser-pack-0.8.1.tgz npm http 200 https://registry.npmjs.org/module-deps/-/module-deps-0.8.0.tgz npm http 200 https://registry.npmjs.org/through/-/through-2.2.7.tgz npm http 200 https://registry.npmjs.org/duplexer/-/duplexer-0.0.4.tgz npm http 200 https://registry.npmjs.org/concat-stream/-/concat-stream-0.1.1.tgz npm http 200 https://registry.npmjs.org/inherits/-/inherits-1.0.0.tgz npm http 200 https://registry.npmjs.org/browser-resolve/-/browser-resolve-0.1.1.tgz npm http 200 https://registry.npmjs.org/syntax-error/-/syntax-error-0.0.1.tgz npm http 200 https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-0.2.1.tgz npm http 200 https://registry.npmjs.org/umd/-/umd-1.1.1.tgz npm http 304 https://registry.npmjs.org/jshint npm http 200 https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz npm http 200 https://registry.npmjs.org/JSONStream/-/JSONStream-0.4.4.tgz npm http GET https://registry.npmjs.org/jshint/-/jshint-1.1.0.tgz npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/minimatch npm http 200 https://registry.npmjs.org/jshint/-/jshint-1.1.0.tgz npm http GET https://registry.npmjs.org/zlib-browserify/0.0.1 npm http GET https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/estraverse npm http GET https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/colors npm http GET https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/optimist npm http GET https://registry.npmjs.org/async npm http 304 https://registry.npmjs.org/minimatch npm http 304 https://registry.npmjs.org/inherits npm http 200 https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.1.tgz npm http 200 https://registry.npmjs.org/underscore npm http 200 https://registry.npmjs.org/estraverse npm http GET https://registry.npmjs.org/underscore/-/underscore-1.1.7.tgz npm http GET https://registry.npmjs.org/estraverse/-/estraverse-0.0.4.tgz npm http GET https://registry.npmjs.org/through npm http 304 https://registry.npmjs.org/colors npm http GET https://registry.npmjs.org/colors/-/colors-0.5.1.tgz npm http 200 https://registry.npmjs.org/zlib-browserify/0.0.1 npm http 200 https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/source-map/-/source-map-0.1.22.tgz npm http GET https://registry.npmjs.org/zlib-browserify/-/zlib-browserify-0.0.1.tgz npm http 304 https://registry.npmjs.org/optimist npm http 304 https://registry.npmjs.org/async npm http 200 https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.1.tgz npm http 200 https://registry.npmjs.org/underscore/-/underscore-1.1.7.tgz npm http 200 https://registry.npmjs.org/estraverse/-/estraverse-0.0.4.tgz npm http GET https://registry.npmjs.org/async/-/async-0.2.8.tgz npm http 304 https://registry.npmjs.org/through npm http 200 https://registry.npmjs.org/source-map npm http 200 https://registry.npmjs.org/source-map/-/source-map-0.1.22.tgz npm http 200 https://registry.npmjs.org/colors/-/colors-0.5.1.tgz npm http 200 https://registry.npmjs.org/zlib-browserify/-/zlib-browserify-0.0.1.tgz npm http GET https://registry.npmjs.org/abbrev npm http GET https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/sigmund npm http GET https://registry.npmjs.org/browser-pack npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/module-deps npm http GET https://registry.npmjs.org/lodash npm http GET https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/duplexer npm http GET https://registry.npmjs.org/shell-quote npm http GET https://registry.npmjs.org/concat-stream npm http GET https://registry.npmjs.org/insert-module-globals npm http GET https://registry.npmjs.org/syntax-error npm http GET https://registry.npmjs.org/browser-resolve npm http GET https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/optimist npm http GET https://registry.npmjs.org/JSONStream npm http GET https://registry.npmjs.org/umd npm http 200 https://registry.npmjs.org/async/-/async-0.2.8.tgz npm http GET https://registry.npmjs.org/argparse npm http GET https://registry.npmjs.org/esprima npm http 304 https://registry.npmjs.org/browser-pack npm http 304 https://registry.npmjs.org/graceful-fs npm http 200 https://registry.npmjs.org/sigmund npm http 200 https://registry.npmjs.org/abbrev npm http GET https://registry.npmjs.org/rfile npm http GET https://registry.npmjs.org/ruglify npm http GET https://registry.npmjs.org/uglify-js/1.3.4 npm http GET https://registry.npmjs.org/combine-source-map npm http GET https://registry.npmjs.org/wordwrap npm http GET https://registry.npmjs.org/resolve npm http GET https://registry.npmjs.org/commondir npm http GET https://registry.npmjs.org/lexical-scope npm http GET https://registry.npmjs.org/resolve/0.3.1 npm http GET https://registry.npmjs.org/console-browserify/0.1.6 npm http GET https://registry.npmjs.org/detective npm http GET https://registry.npmjs.org/process npm http GET https://registry.npmjs.org/vm-browserify/0.0.1 npm http GET https://registry.npmjs.org/crypto-browserify/0.2.1 npm http GET https://registry.npmjs.org/http-browserify/0.1.11 npm http GET https://registry.npmjs.org/buffer-browserify/0.0.5 npm http GET https://registry.npmjs.org/esprima npm http GET https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/uglify-js npm http GET https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.14.tgz npm http GET https://registry.npmjs.org/sigmund/-/sigmund-1.0.0.tgz npm http GET https://registry.npmjs.org/abbrev/-/abbrev-1.0.4.tgz npm http 200 https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/jsonparse/0.0.5 npm http 304 https://registry.npmjs.org/through npm http 304 https://registry.npmjs.org/lodash npm http 304 https://registry.npmjs.org/inherits npm http 304 https://registry.npmjs.org/module-deps npm http GET https://registry.npmjs.org/lru-cache/-/lru-cache-2.3.0.tgz npm http GET https://registry.npmjs.org/module-deps/-/module-deps-0.6.2.tgz npm http GET https://registry.npmjs.org/lodash/-/lodash-1.0.1.tgz npm http 304 https://registry.npmjs.org/duplexer npm http 304 https://registry.npmjs.org/shell-quote npm http 304 https://registry.npmjs.org/insert-module-globals npm http 304 https://registry.npmjs.org/syntax-error npm http 304 https://registry.npmjs.org/concat-stream npm http 304 https://registry.npmjs.org/browser-resolve npm http 304 https://registry.npmjs.org/inherits npm http 304 https://registry.npmjs.org/optimist npm http 304 https://registry.npmjs.org/JSONStream npm http 304 https://registry.npmjs.org/umd npm http 200 https://registry.npmjs.org/argparse npm http 200 https://registry.npmjs.org/uglify-js/1.3.4 npm http 200 https://registry.npmjs.org/rfile npm http 200 https://registry.npmjs.org/ruglify npm http 304 https://registry.npmjs.org/esprima npm http GET https://registry.npmjs.org/uglify-js/-/uglify-js-1.3.4.tgz npm http GET https://registry.npmjs.org/ruglify/-/ruglify-1.0.0.tgz npm http GET https://registry.npmjs.org/argparse/-/argparse-0.1.15.tgz npm http GET https://registry.npmjs.org/rfile/-/rfile-1.0.0.tgz npm http GET https://registry.npmjs.org/amdefine npm http 200 https://registry.npmjs.org/commondir npm http GET https://registry.npmjs.org/commondir/-/commondir-0.0.1.tgz npm http 200 https://registry.npmjs.org/combine-source-map npm http 200 https://registry.npmjs.org/wordwrap npm http GET https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.1.2.tgz npm http GET https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz npm http 200 https://registry.npmjs.org/resolve npm http 200 https://registry.npmjs.org/lexical-scope npm http GET https://registry.npmjs.org/lexical-scope/-/lexical-scope-0.0.11.tgz npm http 200 https://registry.npmjs.org/resolve/0.3.1 npm http GET https://registry.npmjs.org/resolve/-/resolve-0.3.1.tgz npm http 200 https://registry.npmjs.org/vm-browserify/0.0.1 npm http 200 https://registry.npmjs.org/detective npm http GET https://registry.npmjs.org/detective/-/detective-2.1.2.tgz npm http 200 https://registry.npmjs.org/process npm http GET https://registry.npmjs.org/process/-/process-0.5.1.tgz npm http 200 https://registry.npmjs.org/console-browserify/0.1.6 npm http GET https://registry.npmjs.org/console-browserify/-/console-browserify-0.1.6.tgz npm http GET https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.1.tgz npm http 304 https://registry.npmjs.org/esprima npm http 200 https://registry.npmjs.org/crypto-browserify/0.2.1 npm http GET https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-0.2.1.tgz npm http 304 https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/esprima/-/esprima-0.9.9.tgz npm http GET https://registry.npmjs.org/through/-/through-2.3.4.tgz npm http 200 https://registry.npmjs.org/http-browserify/0.1.11 npm http GET https://registry.npmjs.org/http-browserify/-/http-browserify-0.1.11.tgz npm http 200 https://registry.npmjs.org/buffer-browserify/0.0.5 npm http GET https://registry.npmjs.org/buffer-browserify/-/buffer-browserify-0.0.5.tgz npm http 304 https://registry.npmjs.org/uglify-js npm http 200 https://registry.npmjs.org/sigmund/-/sigmund-1.0.0.tgz npm http 200 https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.14.tgz npm http 200 https://registry.npmjs.org/abbrev/-/abbrev-1.0.4.tgz npm http 304 https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/uglify-js/-/uglify-js-2.2.5.tgz npm http 200 https://registry.npmjs.org/lru-cache/-/lru-cache-2.3.0.tgz npm http 200 https://registry.npmjs.org/module-deps/-/module-deps-0.6.2.tgz npm http 200 https://registry.npmjs.org/jsonparse/0.0.5 npm http GET https://registry.npmjs.org/jsonparse/-/jsonparse-0.0.5.tgz npm http 200 https://registry.npmjs.org/uglify-js/-/uglify-js-1.3.4.tgz npm http 200 https://registry.npmjs.org/lodash/-/lodash-1.0.1.tgz npm http 200 https://registry.npmjs.org/ruglify/-/ruglify-1.0.0.tgz npm http 200 https://registry.npmjs.org/rfile/-/rfile-1.0.0.tgz npm http 200 https://registry.npmjs.org/argparse/-/argparse-0.1.15.tgz npm http 200 https://registry.npmjs.org/amdefine npm http 200 https://registry.npmjs.org/commondir/-/commondir-0.0.1.tgz npm http 200 https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.1.2.tgz npm http GET https://registry.npmjs.org/amdefine/-/amdefine-0.0.5.tgz npm http 200 https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz npm http 200 https://registry.npmjs.org/lexical-scope/-/lexical-scope-0.0.11.tgz npm http 200 https://registry.npmjs.org/process/-/process-0.5.1.tgz npm http 200 https://registry.npmjs.org/resolve/-/resolve-0.3.1.tgz npm http 200 https://registry.npmjs.org/detective/-/detective-2.1.2.tgz npm http 200 https://registry.npmjs.org/console-browserify/-/console-browserify-0.1.6.tgz npm http 200 https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-0.2.1.tgz npm http 200 https://registry.npmjs.org/through/-/through-2.3.4.tgz npm http 200 https://registry.npmjs.org/esprima/-/esprima-0.9.9.tgz npm http 200 https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.1.tgz npm http 200 https://registry.npmjs.org/http-browserify/-/http-browserify-0.1.11.tgz npm http 200 https://registry.npmjs.org/buffer-browserify/-/buffer-browserify-0.0.5.tgz npm http 200 https://registry.npmjs.org/jsonparse/-/jsonparse-0.0.5.tgz npm http 200 https://registry.npmjs.org/uglify-js/-/uglify-js-2.2.5.tgz npm http 200 https://registry.npmjs.org/amdefine/-/amdefine-0.0.5.tgz npm http GET https://registry.npmjs.org/rfile npm http GET https://registry.npmjs.org/combine-source-map npm http GET https://registry.npmjs.org/wordwrap npm http GET https://registry.npmjs.org/commondir npm http GET https://registry.npmjs.org/zlib-browserify/0.0.1 npm http GET https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/underscore.string npm http 304 https://registry.npmjs.org/wordwrap npm http 304 https://registry.npmjs.org/commondir npm http 304 https://registry.npmjs.org/combine-source-map npm http 304 https://registry.npmjs.org/rfile npm http GET https://registry.npmjs.org/esprima/1.0.2 npm http GET https://registry.npmjs.org/escodegen/0.0.15 npm http 304 https://registry.npmjs.org/underscore npm http 304 https://registry.npmjs.org/underscore.string npm http 304 https://registry.npmjs.org/zlib-browserify/0.0.1 npm http GET https://registry.npmjs.org/underscore/-/underscore-1.4.4.tgz npm http GET https://registry.npmjs.org/underscore.string/-/underscore.string-2.3.1.tgz npm http GET https://registry.npmjs.org/convert-source-map npm http GET https://registry.npmjs.org/parse-base64vlq-mappings npm http GET https://registry.npmjs.org/astw npm http GET https://registry.npmjs.org/inline-source-map npm http 200 https://registry.npmjs.org/escodegen/0.0.15 npm http GET https://registry.npmjs.org/escodegen/-/escodegen-0.0.15.tgz npm WARN prefer global jison@0.4.4 should be installed with -g npm http 200 https://registry.npmjs.org/parse-base64vlq-mappings npm http 200 https://registry.npmjs.org/esprima/1.0.2 npm http 200 https://registry.npmjs.org/underscore.string/-/underscore.string-2.3.1.tgz npm http 200 https://registry.npmjs.org/underscore/-/underscore-1.4.4.tgz npm http 200 https://registry.npmjs.org/astw npm http 200 https://registry.npmjs.org/inline-source-map npm http 200 https://registry.npmjs.org/escodegen/-/escodegen-0.0.15.tgz npm http GET https://registry.npmjs.org/esprima/-/esprima-1.0.2.tgz npm http GET https://registry.npmjs.org/astw/-/astw-0.0.0.tgz npm http GET https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.2.3.tgz npm http 200 https://registry.npmjs.org/convert-source-map npm http GET https://registry.npmjs.org/callsite npm http GET https://registry.npmjs.org/resolve npm http GET https://registry.npmjs.org/convert-source-map/-/convert-source-map-0.2.5.tgz npm http GET https://registry.npmjs.org/shelljs npm http GET https://registry.npmjs.org/cli npm http GET https://registry.npmjs.org/console-browserify npm http GET https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/minimatch npm http 200 https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.2.3.tgz npm http 200 https://registry.npmjs.org/astw/-/astw-0.0.0.tgz npm http 200 https://registry.npmjs.org/convert-source-map/-/convert-source-map-0.2.5.tgz npm http 304 https://registry.npmjs.org/resolve npm http GET https://registry.npmjs.org/parse-base64vlq-mappings/-/parse-base64vlq-mappings-0.1.3.tgz npm http 200 https://registry.npmjs.org/esprima/-/esprima-1.0.2.tgz npm http 200 https://registry.npmjs.org/callsite npm http GET https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz npm http 200 https://registry.npmjs.org/shelljs npm http 304 https://registry.npmjs.org/underscore npm http 200 https://registry.npmjs.org/console-browserify npm http 304 https://registry.npmjs.org/minimatch npm http 200 https://registry.npmjs.org/parse-base64vlq-mappings/-/parse-base64vlq-mappings-0.1.3.tgz npm http 200 https://registry.npmjs.org/cli npm http 200 https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz npm http GET https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/shelljs/-/shelljs-0.1.4.tgz npm http GET https://registry.npmjs.org/cli/-/cli-0.4.4-2.tgz npm http 304 https://registry.npmjs.org/source-map npm http 200 https://registry.npmjs.org/cli/-/cli-0.4.4-2.tgz npm http 200 https://registry.npmjs.org/shelljs/-/shelljs-0.1.4.tgz npm http GET https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/amdefine npm http GET https://registry.npmjs.org/base64-js/0.0.2 npm http 304 https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/concat-stream/0.0.8 npm http GET https://registry.npmjs.org/source-map npm http 304 https://registry.npmjs.org/amdefine npm http 200 https://registry.npmjs.org/base64-js/0.0.2 npm http GET https://registry.npmjs.org/base64-js/-/base64-js-0.0.2.tgz npm http GET https://registry.npmjs.org/amdefine npm http 200 https://registry.npmjs.org/concat-stream/0.0.8 npm http 304 https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/concat-stream/-/concat-stream-0.0.8.tgz npm http GET https://registry.npmjs.org/sigmund npm http GET https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/glob npm http 304 https://registry.npmjs.org/amdefine npm http 200 https://registry.npmjs.org/base64-js/-/base64-js-0.0.2.tgz npm http 304 https://registry.npmjs.org/glob npm http 200 https://registry.npmjs.org/concat-stream/-/concat-stream-0.0.8.tgz npm http GET https://registry.npmjs.org/peakle npm http GET https://github.com/ariya/esprima/tarball/master npm http GET https://registry.npmjs.org/amdefine npm http GET https://registry.npmjs.org/shelljs npm http GET https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/cli npm http GET https://registry.npmjs.org/minimatch npm http GET https://registry.npmjs.org/glob/-/glob-3.2.1.tgz npm http 304 https://registry.npmjs.org/shelljs npm http 304 https://registry.npmjs.org/lru-cache npm http 304 https://registry.npmjs.org/sigmund npm http GET https://registry.npmjs.org/source-map npm http 304 https://registry.npmjs.org/minimatch npm http 304 https://registry.npmjs.org/cli npm http 304 https://registry.npmjs.org/underscore npm http 200 https://registry.npmjs.org/peakle npm http 304 https://registry.npmjs.org/amdefine npm http GET https://registry.npmjs.org/peakle/-/peakle-0.0.1.tgz npm http 304 https://registry.npmjs.org/source-map npm http 200 https://registry.npmjs.org/glob/-/glob-3.2.1.tgz npm http GET https://registry.npmjs.org/amdefine npm http 200 https://registry.npmjs.org/peakle/-/peakle-0.0.1.tgz npm http 200 https://github.com/ariya/esprima/tarball/master npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/inherits npm http 304 https://registry.npmjs.org/amdefine npm http 304 https://registry.npmjs.org/graceful-fs npm http 304 https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/sigmund npm http GET https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/glob npm http 304 https://registry.npmjs.org/sigmund npm http 304 https://registry.npmjs.org/glob npm http 304 https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/inherits npm http 304 https://registry.npmjs.org/graceful-fs npm http 304 https://registry.npmjs.org/inherits function-extended@0.0.4 node_modules/function-extended is-extended@0.0.8 node_modules/is-extended ht@0.0.2 node_modules/ht string-extended@0.0.5 node_modules/string-extended leafy@0.0.2 node_modules/leafy declare.js@0.0.4 node_modules/declare.js grunt-it@0.3.1 node_modules/grunt-it commander@1.1.1 node_modules/commander └── keypress@0.1.0 object-extended@0.0.5 node_modules/object-extended └── array-extended@0.0.4 extended@0.0.4 node_modules/extended └── extender@0.0.7 it@0.2.6 node_modules/it └── glob@3.1.21 (inherits@1.0.0, graceful-fs@1.2.1, minimatch@0.2.12) grunt-contrib-uglify@0.2.1 node_modules/grunt-contrib-uglify ├── grunt-lib-contrib@0.6.1 (zlib-browserify@0.0.1) └── uglify-js@2.3.6 (async@0.2.8, optimist@0.3.7, source-map@0.1.22) jison@0.4.4 node_modules/jison ├── lex-parser@0.1.0 ├── ebnf-parser@0.1.1 ├── jison-lex@0.2.0 ├── esprima@1.0.3 ├── JSONSelect@0.4.0 ├── nomnom@1.5.2 (colors@0.5.1, underscore@1.1.7) └── escodegen@0.0.21 (estraverse@0.0.4, source-map@0.1.22) grunt@0.4.1 node_modules/grunt ├── dateformat@1.0.2-1.2.3 ├── colors@0.6.0-1 ├── hooker@0.2.3 ├── async@0.1.22 ├── eventemitter2@0.4.11 ├── which@1.0.5 ├── underscore.string@2.2.0rc ├── coffee-script@1.3.3 ├── iconv-lite@0.2.9 ├── lodash@0.9.2 ├── glob@3.1.21 (inherits@1.0.0, graceful-fs@1.2.1) ├── nopt@1.0.10 (abbrev@1.0.4) ├── rimraf@2.0.3 (graceful-fs@1.1.14) ├── minimatch@0.2.12 (sigmund@1.0.0, lru-cache@2.3.0) ├── js-yaml@2.0.5 (esprima@1.0.3, argparse@0.1.15) └── findup-sync@0.1.2 (lodash@1.0.1) grunt-contrib-jshint@0.5.4 node_modules/grunt-contrib-jshint └── jshint@2.0.1 (console-browserify@0.1.6, underscore@1.4.4, shelljs@0.1.4, minimatch@0.2.12, cli@0.4.4-2) grunt-browserify@1.0.2 node_modules/grunt-browserify ├── browserify-shim@2.0.3 (through@2.2.7) └── browserify@2.12.5 (inherits@1.0.0, concat-stream@0.1.1, shell-quote@0.0.1, duplexer@0.0.4, through@2.2.7, JSONStream@0.4.4, optimist@0.3.7, umd@1.1.1, insert-module-globals@0.2.1, browser-resolve@0.1.1, browser-pack@0.8.1, module-deps@0.6.2, syntax-error@0.0.1) browserify@2.14.2 node_modules/browserify ├── inherits@1.0.0 ├── concat-stream@0.1.1 ├── shell-quote@0.0.1 ├── duplexer@0.0.4 ├── through@2.2.7 ├── optimist@0.3.7 (wordwrap@0.0.2) ├── JSONStream@0.4.4 (jsonparse@0.0.5) ├── umd@1.1.1 (through@2.3.4, ruglify@1.0.0, rfile@1.0.0, uglify-js@2.2.5) ├── insert-module-globals@0.2.1 (process@0.5.1, commondir@0.0.1, lexical-scope@0.0.11) ├── browser-resolve@0.1.1 (console-browserify@0.1.6, zlib-browserify@0.0.1, vm-browserify@0.0.1, crypto-browserify@0.2.1, resolve@0.3.1, buffer-browserify@0.0.5, http-browserify@0.1.11) ├── browser-pack@0.8.1 (uglify-js@1.3.4, combine-source-map@0.1.2) ├── module-deps@0.8.0 (through@2.3.4, resolve@0.3.1, detective@2.1.2) └── syntax-error@0.0.1 (esprima@0.9.9) array-extended@0.0.5 node_modules/array-extended └── grunt-contrib-jshint@0.4.3 (jshint@1.1.0) promise-extended@0.0.6 node_modules/promise-extended └── grunt-contrib-jshint@0.3.0 (jshint@1.1.0) date-extended@0.0.4 node_modules/date-extended └── grunt-contrib-jshint@0.4.3 (jshint@1.1.0)
timeout waiting to hear back from safari/6.0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
✓8.0
✓9.0
✓10.0
✓20.0
✓21.0
✓22.0
✓23.0
✓24.0
✓25.0
✓14.0
✓15.0
✓16.0
✓17.0
✓18.0
✓19.0
6.0
6.0
6.0
npm http GET https://registry.npmjs.org/grunt npm http GET https://registry.npmjs.org/declare.js npm http GET https://registry.npmjs.org/string-extended npm http GET https://registry.npmjs.org/extended npm http GET https://registry.npmjs.org/array-extended npm http GET https://registry.npmjs.org/date-extended npm http GET https://registry.npmjs.org/is-extended npm http GET https://registry.npmjs.org/function-extended npm http GET https://registry.npmjs.org/object-extended npm http GET https://registry.npmjs.org/promise-extended npm http GET https://registry.npmjs.org/leafy npm http GET https://registry.npmjs.org/ht npm http GET https://registry.npmjs.org/commander npm http GET https://registry.npmjs.org/it npm http GET https://registry.npmjs.org/jison npm http GET https://registry.npmjs.org/grunt-it npm http GET https://registry.npmjs.org/grunt-contrib-uglify npm http GET https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/grunt-browserify npm http GET https://registry.npmjs.org/browserify npm http 200 https://registry.npmjs.org/string-extended npm http GET https://registry.npmjs.org/string-extended/-/string-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/extended npm http GET https://registry.npmjs.org/extended/-/extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/date-extended npm http GET https://registry.npmjs.org/date-extended/-/date-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/declare.js npm http 200 https://registry.npmjs.org/array-extended npm http GET https://registry.npmjs.org/declare.js/-/declare.js-0.0.4.tgz npm http GET https://registry.npmjs.org/array-extended/-/array-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/grunt npm http GET https://registry.npmjs.org/grunt/-/grunt-0.4.1.tgz npm http 200 https://registry.npmjs.org/function-extended npm http GET https://registry.npmjs.org/function-extended/-/function-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/is-extended npm http GET https://registry.npmjs.org/is-extended/-/is-extended-0.0.8.tgz npm http 200 https://registry.npmjs.org/promise-extended npm http GET https://registry.npmjs.org/promise-extended/-/promise-extended-0.0.6.tgz npm http 200 https://registry.npmjs.org/leafy npm http GET https://registry.npmjs.org/leafy/-/leafy-0.0.2.tgz npm http 200 https://registry.npmjs.org/object-extended npm http GET https://registry.npmjs.org/object-extended/-/object-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/ht npm http GET https://registry.npmjs.org/ht/-/ht-0.0.2.tgz npm http 200 https://registry.npmjs.org/commander npm http GET https://registry.npmjs.org/commander/-/commander-1.1.1.tgz npm http 200 https://registry.npmjs.org/jison npm http GET https://registry.npmjs.org/jison/-/jison-0.4.4.tgz npm http 200 https://registry.npmjs.org/grunt-it npm http GET https://registry.npmjs.org/grunt-it/-/grunt-it-0.3.1.tgz npm http 200 https://registry.npmjs.org/it npm http GET https://registry.npmjs.org/it/-/it-0.2.6.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-uglify npm http 200 https://registry.npmjs.org/string-extended/-/string-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/grunt-browserify npm http GET https://registry.npmjs.org/grunt-contrib-uglify/-/grunt-contrib-uglify-0.2.1.tgz npm http GET https://registry.npmjs.org/grunt-browserify/-/grunt-browserify-1.0.2.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-jshint npm http 200 https://registry.npmjs.org/extended/-/extended-0.0.4.tgz npm http GET https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.5.4.tgz npm http 200 https://registry.npmjs.org/date-extended/-/date-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/declare.js/-/declare.js-0.0.4.tgz npm http 200 https://registry.npmjs.org/array-extended/-/array-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/grunt/-/grunt-0.4.1.tgz npm http 200 https://registry.npmjs.org/function-extended/-/function-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/is-extended/-/is-extended-0.0.8.tgz npm http 200 https://registry.npmjs.org/promise-extended/-/promise-extended-0.0.6.tgz npm http 200 https://registry.npmjs.org/object-extended/-/object-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/leafy/-/leafy-0.0.2.tgz npm http 200 https://registry.npmjs.org/commander/-/commander-1.1.1.tgz npm http 200 https://registry.npmjs.org/ht/-/ht-0.0.2.tgz npm http 200 https://registry.npmjs.org/grunt-it/-/grunt-it-0.3.1.tgz npm http 200 https://registry.npmjs.org/jison/-/jison-0.4.4.tgz npm http 200 https://registry.npmjs.org/browserify npm http GET https://registry.npmjs.org/browserify/-/browserify-2.14.2.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-uglify/-/grunt-contrib-uglify-0.2.1.tgz npm http 200 https://registry.npmjs.org/it/-/it-0.2.6.tgz npm http 200 https://registry.npmjs.org/grunt-browserify/-/grunt-browserify-1.0.2.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.5.4.tgz npm http 200 https://registry.npmjs.org/browserify/-/browserify-2.14.2.tgz npm http GET https://registry.npmjs.org/keypress npm http GET https://registry.npmjs.org/array-extended/0.0.4 npm http GET https://registry.npmjs.org/jshint npm http GET https://registry.npmjs.org/JSONSelect/0.4.0 npm http GET https://registry.npmjs.org/esprima npm http GET https://registry.npmjs.org/extender npm http GET https://registry.npmjs.org/uglify-js npm http GET https://registry.npmjs.org/grunt-lib-contrib npm http GET https://registry.npmjs.org/escodegen/0.0.21 npm http GET https://registry.npmjs.org/jison-lex npm http GET https://registry.npmjs.org/ebnf-parser npm http GET https://registry.npmjs.org/lex-parser npm http GET https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/nomnom/1.5.2 npm http GET https://registry.npmjs.org/glob npm http GET https://registry.npmjs.org/browserify-shim npm http GET https://registry.npmjs.org/async npm http GET https://registry.npmjs.org/coffee-script npm http GET https://registry.npmjs.org/colors npm http GET https://registry.npmjs.org/dateformat/1.0.2-1.2.3 npm http GET https://registry.npmjs.org/eventemitter2 npm http GET https://registry.npmjs.org/findup-sync npm http GET https://registry.npmjs.org/hooker npm http GET https://registry.npmjs.org/iconv-lite npm http GET https://registry.npmjs.org/minimatch npm http GET https://registry.npmjs.org/nopt npm http GET https://registry.npmjs.org/rimraf npm http GET https://registry.npmjs.org/lodash npm http GET https://registry.npmjs.org/underscore.string npm http GET https://registry.npmjs.org/which npm http GET https://registry.npmjs.org/js-yaml npm http GET https://registry.npmjs.org/browserify npm http GET https://registry.npmjs.org/module-deps npm http GET https://registry.npmjs.org/browser-pack npm http GET https://registry.npmjs.org/shell-quote npm http GET https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/duplexer npm http GET https://registry.npmjs.org/concat-stream npm http GET https://registry.npmjs.org/insert-module-globals npm http GET https://registry.npmjs.org/syntax-error npm http GET https://registry.npmjs.org/browser-resolve npm http GET https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/optimist npm http GET https://registry.npmjs.org/JSONStream npm http GET https://registry.npmjs.org/umd npm http 200 https://registry.npmjs.org/JSONSelect/0.4.0 npm http GET https://registry.npmjs.org/JSONSelect/-/JSONSelect-0.4.0.tgz npm http 200 https://registry.npmjs.org/array-extended/0.0.4 npm http GET https://registry.npmjs.org/array-extended/-/array-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/esprima npm http 200 https://registry.npmjs.org/keypress npm http GET https://registry.npmjs.org/esprima/-/esprima-1.0.3.tgz npm http GET https://registry.npmjs.org/keypress/-/keypress-0.1.0.tgz npm http 200 https://registry.npmjs.org/grunt-lib-contrib npm http GET https://registry.npmjs.org/grunt-lib-contrib/-/grunt-lib-contrib-0.6.1.tgz npm http 200 https://registry.npmjs.org/escodegen/0.0.21 npm http GET https://registry.npmjs.org/escodegen/-/escodegen-0.0.21.tgz npm http 200 https://registry.npmjs.org/jshint npm http 200 https://registry.npmjs.org/extender npm http GET https://registry.npmjs.org/jshint/-/jshint-2.0.1.tgz npm http GET https://registry.npmjs.org/extender/-/extender-0.0.7.tgz npm http 304 https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.4.3.tgz npm http 200 https://registry.npmjs.org/jison-lex npm http GET https://registry.npmjs.org/jison-lex/-/jison-lex-0.2.0.tgz npm http 200 https://registry.npmjs.org/ebnf-parser npm http 200 https://registry.npmjs.org/lex-parser npm http 304 https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/ebnf-parser/-/ebnf-parser-0.1.1.tgz npm http GET https://registry.npmjs.org/lex-parser/-/lex-parser-0.1.0.tgz npm http GET https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.3.0.tgz npm http 200 https://registry.npmjs.org/nomnom/1.5.2 npm http GET https://registry.npmjs.org/nomnom/-/nomnom-1.5.2.tgz npm http 200 https://registry.npmjs.org/uglify-js npm http 200 https://registry.npmjs.org/browserify-shim npm http GET https://registry.npmjs.org/browserify-shim/-/browserify-shim-2.0.3.tgz npm http GET https://registry.npmjs.org/uglify-js/-/uglify-js-2.3.6.tgz npm http 200 https://registry.npmjs.org/glob npm http 200 https://registry.npmjs.org/dateformat/1.0.2-1.2.3 npm http 200 https://registry.npmjs.org/coffee-script npm http GET https://registry.npmjs.org/glob/-/glob-3.1.21.tgz npm http GET https://registry.npmjs.org/coffee-script/-/coffee-script-1.3.3.tgz npm http GET https://registry.npmjs.org/dateformat/-/dateformat-1.0.2-1.2.3.tgz npm http 200 https://registry.npmjs.org/colors npm http GET https://registry.npmjs.org/colors/-/colors-0.6.0-1.tgz npm http 200 https://registry.npmjs.org/hooker npm http 200 https://registry.npmjs.org/eventemitter2 npm http 200 https://registry.npmjs.org/findup-sync npm http GET https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz npm http GET https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.11.tgz npm http GET https://registry.npmjs.org/findup-sync/-/findup-sync-0.1.2.tgz npm http 200 https://registry.npmjs.org/iconv-lite npm http GET https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.2.9.tgz npm http 200 https://registry.npmjs.org/nopt npm http 200 https://registry.npmjs.org/rimraf npm http GET https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz npm http GET https://registry.npmjs.org/rimraf/-/rimraf-2.0.3.tgz npm http 200 https://registry.npmjs.org/minimatch npm http GET https://registry.npmjs.org/minimatch/-/minimatch-0.2.12.tgz npm http 200 https://registry.npmjs.org/underscore.string npm http 200 https://registry.npmjs.org/which npm http GET https://registry.npmjs.org/underscore.string/-/underscore.string-2.2.0rc.tgz npm http GET https://registry.npmjs.org/which/-/which-1.0.5.tgz npm http 304 https://registry.npmjs.org/browserify npm http GET https://registry.npmjs.org/browserify/-/browserify-2.12.5.tgz npm http 200 https://registry.npmjs.org/js-yaml npm http GET https://registry.npmjs.org/js-yaml/-/js-yaml-2.0.5.tgz npm http 200 https://registry.npmjs.org/async npm http 200 https://registry.npmjs.org/lodash npm http 200 https://registry.npmjs.org/module-deps npm http 200 https://registry.npmjs.org/browser-pack npm http 200 https://registry.npmjs.org/through npm http 200 https://registry.npmjs.org/shell-quote npm http GET https://registry.npmjs.org/async/-/async-0.1.22.tgz npm http GET https://registry.npmjs.org/browser-pack/-/browser-pack-0.8.1.tgz npm http GET https://registry.npmjs.org/through/-/through-2.2.7.tgz npm http GET https://registry.npmjs.org/module-deps/-/module-deps-0.8.0.tgz npm http GET https://registry.npmjs.org/shell-quote/-/shell-quote-0.0.1.tgz npm http GET https://registry.npmjs.org/lodash/-/lodash-0.9.2.tgz npm http 200 https://registry.npmjs.org/duplexer npm http GET https://registry.npmjs.org/duplexer/-/duplexer-0.0.4.tgz npm http 200 https://registry.npmjs.org/concat-stream npm http 200 https://registry.npmjs.org/insert-module-globals npm http GET https://registry.npmjs.org/concat-stream/-/concat-stream-0.1.1.tgz npm http 200 https://registry.npmjs.org/browser-resolve npm http GET https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-0.2.1.tgz npm http GET https://registry.npmjs.org/browser-resolve/-/browser-resolve-0.1.1.tgz npm http 200 https://registry.npmjs.org/syntax-error npm http GET https://registry.npmjs.org/syntax-error/-/syntax-error-0.0.1.tgz npm http 200 https://registry.npmjs.org/JSONSelect/-/JSONSelect-0.4.0.tgz npm http 200 https://registry.npmjs.org/umd npm http 200 https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/umd/-/umd-1.1.1.tgz npm http GET https://registry.npmjs.org/inherits/-/inherits-1.0.0.tgz npm http 200 https://registry.npmjs.org/JSONStream npm http GET https://registry.npmjs.org/JSONStream/-/JSONStream-0.4.4.tgz npm http 200 https://registry.npmjs.org/array-extended/-/array-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/optimist npm http GET https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz npm http 200 https://registry.npmjs.org/esprima/-/esprima-1.0.3.tgz npm http 200 https://registry.npmjs.org/keypress/-/keypress-0.1.0.tgz npm http 200 https://registry.npmjs.org/grunt-lib-contrib/-/grunt-lib-contrib-0.6.1.tgz npm http 200 https://registry.npmjs.org/escodegen/-/escodegen-0.0.21.tgz npm http 200 https://registry.npmjs.org/extender/-/extender-0.0.7.tgz npm http 200 https://registry.npmjs.org/jshint/-/jshint-2.0.1.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.4.3.tgz npm http 200 https://registry.npmjs.org/ebnf-parser/-/ebnf-parser-0.1.1.tgz npm http 200 https://registry.npmjs.org/jison-lex/-/jison-lex-0.2.0.tgz npm http 200 https://registry.npmjs.org/lex-parser/-/lex-parser-0.1.0.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.3.0.tgz npm http 200 https://registry.npmjs.org/uglify-js/-/uglify-js-2.3.6.tgz npm http 200 https://registry.npmjs.org/glob/-/glob-3.1.21.tgz npm http 200 https://registry.npmjs.org/nomnom/-/nomnom-1.5.2.tgz npm http 200 https://registry.npmjs.org/browserify-shim/-/browserify-shim-2.0.3.tgz npm http 200 https://registry.npmjs.org/dateformat/-/dateformat-1.0.2-1.2.3.tgz npm http 200 https://registry.npmjs.org/coffee-script/-/coffee-script-1.3.3.tgz npm http 200 https://registry.npmjs.org/colors/-/colors-0.6.0-1.tgz npm http 200 https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz npm http 200 https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.11.tgz npm http 200 https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.2.9.tgz npm http 200 https://registry.npmjs.org/findup-sync/-/findup-sync-0.1.2.tgz npm http 200 https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz npm http 200 https://registry.npmjs.org/rimraf/-/rimraf-2.0.3.tgz npm http 200 https://registry.npmjs.org/minimatch/-/minimatch-0.2.12.tgz npm http 200 https://registry.npmjs.org/underscore.string/-/underscore.string-2.2.0rc.tgz npm http 200 https://registry.npmjs.org/browserify/-/browserify-2.12.5.tgz npm http 200 https://registry.npmjs.org/which/-/which-1.0.5.tgz npm http 200 https://registry.npmjs.org/js-yaml/-/js-yaml-2.0.5.tgz npm http 200 https://registry.npmjs.org/browser-pack/-/browser-pack-0.8.1.tgz npm http 200 https://registry.npmjs.org/async/-/async-0.1.22.tgz npm http 200 https://registry.npmjs.org/through/-/through-2.2.7.tgz npm http 200 https://registry.npmjs.org/shell-quote/-/shell-quote-0.0.1.tgz npm http 200 https://registry.npmjs.org/module-deps/-/module-deps-0.8.0.tgz npm http GET https://registry.npmjs.org/jshint npm http 200 https://registry.npmjs.org/duplexer/-/duplexer-0.0.4.tgz npm http 200 https://registry.npmjs.org/concat-stream/-/concat-stream-0.1.1.tgz npm http 200 https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-0.2.1.tgz npm http 200 https://registry.npmjs.org/lodash/-/lodash-0.9.2.tgz npm http 200 https://registry.npmjs.org/browser-resolve/-/browser-resolve-0.1.1.tgz npm http 200 https://registry.npmjs.org/syntax-error/-/syntax-error-0.0.1.tgz npm http 200 https://registry.npmjs.org/umd/-/umd-1.1.1.tgz npm http 200 https://registry.npmjs.org/inherits/-/inherits-1.0.0.tgz npm http 200 https://registry.npmjs.org/JSONStream/-/JSONStream-0.4.4.tgz npm http 200 https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz npm http 304 https://registry.npmjs.org/jshint npm http GET https://registry.npmjs.org/jshint/-/jshint-1.1.0.tgz npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/minimatch npm http GET https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/colors npm http GET https://registry.npmjs.org/estraverse npm http GET https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/zlib-browserify/0.0.1 npm http 200 https://registry.npmjs.org/jshint/-/jshint-1.1.0.tgz npm http 304 https://registry.npmjs.org/minimatch npm http 304 https://registry.npmjs.org/inherits npm http 200 https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.1.tgz npm http 304 https://registry.npmjs.org/colors npm http 200 https://registry.npmjs.org/estraverse npm http GET https://registry.npmjs.org/colors/-/colors-0.5.1.tgz npm http GET https://registry.npmjs.org/estraverse/-/estraverse-0.0.4.tgz npm http 200 https://registry.npmjs.org/zlib-browserify/0.0.1 npm http GET https://registry.npmjs.org/zlib-browserify/-/zlib-browserify-0.0.1.tgz npm http 200 https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/underscore/-/underscore-1.1.7.tgz npm http GET https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/optimist npm http GET https://registry.npmjs.org/async npm http 200 https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.1.tgz npm http 200 https://registry.npmjs.org/estraverse/-/estraverse-0.0.4.tgz npm http 200 https://registry.npmjs.org/colors/-/colors-0.5.1.tgz npm http 200 https://registry.npmjs.org/zlib-browserify/-/zlib-browserify-0.0.1.tgz npm http 304 https://registry.npmjs.org/optimist npm http 200 https://registry.npmjs.org/underscore/-/underscore-1.1.7.tgz npm http 200 https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/source-map/-/source-map-0.1.22.tgz npm http 304 https://registry.npmjs.org/async npm http GET https://registry.npmjs.org/async/-/async-0.2.8.tgz npm http 200 https://registry.npmjs.org/source-map npm http 200 https://registry.npmjs.org/source-map/-/source-map-0.1.22.tgz npm http GET https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/sigmund npm http 200 https://registry.npmjs.org/async/-/async-0.2.8.tgz npm http GET https://registry.npmjs.org/rfile npm http GET https://registry.npmjs.org/ruglify npm http GET https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/esprima npm http GET https://registry.npmjs.org/uglify-js npm http GET https://registry.npmjs.org/combine-source-map npm http GET https://registry.npmjs.org/wordwrap npm http GET https://registry.npmjs.org/resolve npm http GET https://registry.npmjs.org/commondir npm http GET https://registry.npmjs.org/lexical-scope npm http GET https://registry.npmjs.org/resolve/0.3.1 npm http GET https://registry.npmjs.org/console-browserify/0.1.6 npm http GET https://registry.npmjs.org/uglify-js/1.3.4 npm http GET https://registry.npmjs.org/detective npm http GET https://registry.npmjs.org/process npm http GET https://registry.npmjs.org/vm-browserify/0.0.1 npm http GET https://registry.npmjs.org/crypto-browserify/0.2.1 npm http GET https://registry.npmjs.org/http-browserify/0.1.11 npm http GET https://registry.npmjs.org/buffer-browserify/0.0.5 npm http GET https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/zlib-browserify/0.0.1 npm http GET https://registry.npmjs.org/abbrev npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/lodash npm http 200 https://registry.npmjs.org/lru-cache npm http 200 https://registry.npmjs.org/sigmund npm http 304 https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/jsonparse/0.0.5 npm http GET https://registry.npmjs.org/argparse npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/esprima npm http GET https://registry.npmjs.org/browser-pack npm http GET https://registry.npmjs.org/module-deps npm http GET https://registry.npmjs.org/shell-quote npm http GET https://registry.npmjs.org/duplexer npm http GET https://registry.npmjs.org/concat-stream npm http GET https://registry.npmjs.org/insert-module-globals npm http GET https://registry.npmjs.org/syntax-error npm http GET https://registry.npmjs.org/browser-resolve npm http GET https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/optimist npm http GET https://registry.npmjs.org/umd npm http GET https://registry.npmjs.org/JSONStream npm http GET https://registry.npmjs.org/through/-/through-2.3.4.tgz npm http GET https://registry.npmjs.org/sigmund/-/sigmund-1.0.0.tgz npm http GET https://registry.npmjs.org/lru-cache/-/lru-cache-2.3.0.tgz npm http 304 https://registry.npmjs.org/uglify-js npm http 304 https://registry.npmjs.org/esprima npm http 200 https://registry.npmjs.org/ruglify npm http 200 https://registry.npmjs.org/combine-source-map npm http 200 https://registry.npmjs.org/rfile npm http GET https://registry.npmjs.org/uglify-js/-/uglify-js-2.2.5.tgz npm http GET https://registry.npmjs.org/ruglify/-/ruglify-1.0.0.tgz npm http GET https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.1.2.tgz npm http GET https://registry.npmjs.org/rfile/-/rfile-1.0.0.tgz npm http GET https://registry.npmjs.org/esprima/-/esprima-0.9.9.tgz npm http 200 https://registry.npmjs.org/commondir npm http GET https://registry.npmjs.org/commondir/-/commondir-0.0.1.tgz npm http 200 https://registry.npmjs.org/resolve npm http 200 https://registry.npmjs.org/resolve/0.3.1 npm http 200 https://registry.npmjs.org/lexical-scope npm http GET https://registry.npmjs.org/amdefine npm http GET https://registry.npmjs.org/resolve/-/resolve-0.3.1.tgz npm http GET https://registry.npmjs.org/lexical-scope/-/lexical-scope-0.0.11.tgz npm http 200 https://registry.npmjs.org/wordwrap npm http GET https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz npm http 200 https://registry.npmjs.org/console-browserify/0.1.6 npm http GET https://registry.npmjs.org/console-browserify/-/console-browserify-0.1.6.tgz npm http 200 https://registry.npmjs.org/detective npm http GET https://registry.npmjs.org/detective/-/detective-2.1.2.tgz npm http 200 https://registry.npmjs.org/vm-browserify/0.0.1 npm http GET https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.1.tgz npm http 200 https://registry.npmjs.org/uglify-js/1.3.4 npm http 200 https://registry.npmjs.org/process npm http GET https://registry.npmjs.org/uglify-js/-/uglify-js-1.3.4.tgz npm http GET https://registry.npmjs.org/process/-/process-0.5.1.tgz npm http 200 https://registry.npmjs.org/crypto-browserify/0.2.1 npm http GET https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-0.2.1.tgz npm http 200 https://registry.npmjs.org/http-browserify/0.1.11 npm http GET https://registry.npmjs.org/http-browserify/-/http-browserify-0.1.11.tgz npm http 304 https://registry.npmjs.org/zlib-browserify/0.0.1 npm http 304 https://registry.npmjs.org/through npm http 304 https://registry.npmjs.org/through npm http 304 https://registry.npmjs.org/lodash npm http 304 https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.14.tgz npm http GET https://registry.npmjs.org/lodash/-/lodash-1.0.1.tgz npm http 200 https://registry.npmjs.org/abbrev npm http 200 https://registry.npmjs.org/buffer-browserify/0.0.5 npm http 200 https://registry.npmjs.org/jsonparse/0.0.5 npm http GET https://registry.npmjs.org/abbrev/-/abbrev-1.0.4.tgz npm http GET https://registry.npmjs.org/jsonparse/-/jsonparse-0.0.5.tgz npm http GET https://registry.npmjs.org/buffer-browserify/-/buffer-browserify-0.0.5.tgz npm http 304 https://registry.npmjs.org/graceful-fs npm http 304 https://registry.npmjs.org/browser-pack npm http 304 https://registry.npmjs.org/inherits npm http 304 https://registry.npmjs.org/esprima npm http 200 https://registry.npmjs.org/argparse npm http GET https://registry.npmjs.org/argparse/-/argparse-0.1.15.tgz npm http 304 https://registry.npmjs.org/module-deps npm http GET https://registry.npmjs.org/module-deps/-/module-deps-0.6.2.tgz npm http 304 https://registry.npmjs.org/shell-quote npm http 304 https://registry.npmjs.org/insert-module-globals npm http 304 https://registry.npmjs.org/duplexer npm http 304 https://registry.npmjs.org/concat-stream npm http 304 https://registry.npmjs.org/syntax-error npm http 304 https://registry.npmjs.org/browser-resolve npm http 304 https://registry.npmjs.org/JSONStream npm http 304 https://registry.npmjs.org/inherits npm http 304 https://registry.npmjs.org/umd npm http 304 https://registry.npmjs.org/optimist npm http 200 https://registry.npmjs.org/through/-/through-2.3.4.tgz npm http 200 https://registry.npmjs.org/sigmund/-/sigmund-1.0.0.tgz npm http 200 https://registry.npmjs.org/lru-cache/-/lru-cache-2.3.0.tgz npm http 200 https://registry.npmjs.org/ruglify/-/ruglify-1.0.0.tgz npm http 200 https://registry.npmjs.org/uglify-js/-/uglify-js-2.2.5.tgz npm http 200 https://registry.npmjs.org/rfile/-/rfile-1.0.0.tgz npm http 200 https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.1.2.tgz npm http 200 https://registry.npmjs.org/esprima/-/esprima-0.9.9.tgz npm http 200 https://registry.npmjs.org/commondir/-/commondir-0.0.1.tgz npm http 200 https://registry.npmjs.org/resolve/-/resolve-0.3.1.tgz npm http 200 https://registry.npmjs.org/amdefine npm http GET https://registry.npmjs.org/amdefine/-/amdefine-0.0.5.tgz npm http 200 https://registry.npmjs.org/lexical-scope/-/lexical-scope-0.0.11.tgz npm http 200 https://registry.npmjs.org/detective/-/detective-2.1.2.tgz npm http 200 https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz npm http 200 https://registry.npmjs.org/console-browserify/-/console-browserify-0.1.6.tgz npm http 200 https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.1.tgz npm http 200 https://registry.npmjs.org/http-browserify/-/http-browserify-0.1.11.tgz npm http 200 https://registry.npmjs.org/uglify-js/-/uglify-js-1.3.4.tgz npm http 200 https://registry.npmjs.org/process/-/process-0.5.1.tgz npm http 200 https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-0.2.1.tgz npm http GET https://registry.npmjs.org/shelljs npm http GET https://registry.npmjs.org/cli npm http GET https://registry.npmjs.org/console-browserify npm http GET https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/minimatch npm http 200 https://registry.npmjs.org/abbrev/-/abbrev-1.0.4.tgz npm http 200 https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.14.tgz npm http 200 https://registry.npmjs.org/lodash/-/lodash-1.0.1.tgz npm http 200 https://registry.npmjs.org/jsonparse/-/jsonparse-0.0.5.tgz npm http 200 https://registry.npmjs.org/argparse/-/argparse-0.1.15.tgz npm http 200 https://registry.npmjs.org/buffer-browserify/-/buffer-browserify-0.0.5.tgz npm http 200 https://registry.npmjs.org/module-deps/-/module-deps-0.6.2.tgz npm http 200 https://registry.npmjs.org/amdefine/-/amdefine-0.0.5.tgz npm http 200 https://registry.npmjs.org/cli npm http 200 https://registry.npmjs.org/console-browserify npm http 200 https://registry.npmjs.org/shelljs npm http GET https://registry.npmjs.org/esprima/1.0.2 npm http GET https://registry.npmjs.org/escodegen/0.0.15 npm http GET https://registry.npmjs.org/cli/-/cli-0.4.4-2.tgz npm http GET https://registry.npmjs.org/shelljs/-/shelljs-0.1.4.tgz npm http 304 https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/underscore/-/underscore-1.4.4.tgz npm http 304 https://registry.npmjs.org/minimatch npm http GET https://registry.npmjs.org/callsite npm http GET https://registry.npmjs.org/astw npm http 200 https://registry.npmjs.org/shelljs/-/shelljs-0.1.4.tgz npm http GET https://registry.npmjs.org/resolve npm http GET https://registry.npmjs.org/source-map npm http 200 https://registry.npmjs.org/underscore/-/underscore-1.4.4.tgz npm http 200 https://registry.npmjs.org/callsite npm http 200 https://registry.npmjs.org/astw npm http 200 https://registry.npmjs.org/cli/-/cli-0.4.4-2.tgz npm http 200 https://registry.npmjs.org/escodegen/0.0.15 npm http GET https://registry.npmjs.org/escodegen/-/escodegen-0.0.15.tgz npm http GET https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz npm http GET https://registry.npmjs.org/astw/-/astw-0.0.0.tgz npm http 200 https://registry.npmjs.org/esprima/1.0.2 npm http GET https://registry.npmjs.org/esprima/-/esprima-1.0.2.tgz npm http 304 https://registry.npmjs.org/resolve npm http 304 https://registry.npmjs.org/source-map npm http 200 https://registry.npmjs.org/astw/-/astw-0.0.0.tgz npm http 200 https://registry.npmjs.org/esprima/-/esprima-1.0.2.tgz npm http GET https://registry.npmjs.org/parse-base64vlq-mappings npm http GET https://registry.npmjs.org/inline-source-map npm http GET https://registry.npmjs.org/convert-source-map npm http 200 https://registry.npmjs.org/escodegen/-/escodegen-0.0.15.tgz npm http 200 https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz npm http 200 https://registry.npmjs.org/convert-source-map npm http 200 https://registry.npmjs.org/parse-base64vlq-mappings npm http 200 https://registry.npmjs.org/inline-source-map npm http GET https://registry.npmjs.org/ruglify npm http GET https://registry.npmjs.org/rfile npm http GET https://registry.npmjs.org/wordwrap npm http GET https://registry.npmjs.org/detective npm http GET https://registry.npmjs.org/resolve npm http GET https://registry.npmjs.org/combine-source-map npm http GET https://registry.npmjs.org/uglify-js/1.3.4 npm http GET https://registry.npmjs.org/commondir npm http GET https://registry.npmjs.org/resolve/0.3.1 npm http GET https://registry.npmjs.org/lexical-scope npm http GET https://registry.npmjs.org/console-browserify/0.1.6 npm http GET https://registry.npmjs.org/jsonparse/0.0.5 npm http GET https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/underscore.string npm http GET https://registry.npmjs.org/process npm http GET https://registry.npmjs.org/vm-browserify/0.0.1 npm http GET https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/crypto-browserify/0.2.1 npm http GET https://registry.npmjs.org/http-browserify/0.1.11 npm http GET https://registry.npmjs.org/buffer-browserify/0.0.5 npm http GET https://registry.npmjs.org/zlib-browserify/0.0.1 npm http GET https://registry.npmjs.org/uglify-js npm http GET https://registry.npmjs.org/convert-source-map/-/convert-source-map-0.2.5.tgz npm http GET https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.2.3.tgz npm http GET https://registry.npmjs.org/parse-base64vlq-mappings/-/parse-base64vlq-mappings-0.1.3.tgz npm http GET https://registry.npmjs.org/base64-js/0.0.2 npm WARN prefer global jison@0.4.4 should be installed with -g npm http GET https://registry.npmjs.org/peakle npm http GET https://github.com/ariya/esprima/tarball/master npm http GET https://registry.npmjs.org/amdefine npm http GET https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/shelljs npm http GET https://registry.npmjs.org/minimatch npm http 304 https://registry.npmjs.org/detective npm http 304 https://registry.npmjs.org/rfile npm http 304 https://registry.npmjs.org/ruglify npm http 304 https://registry.npmjs.org/resolve npm http 304 https://registry.npmjs.org/wordwrap npm http 304 https://registry.npmjs.org/lexical-scope npm http 304 https://registry.npmjs.org/resolve/0.3.1 npm http 304 https://registry.npmjs.org/commondir npm http 304 https://registry.npmjs.org/uglify-js/1.3.4 npm http 304 https://registry.npmjs.org/combine-source-map npm http 304 https://registry.npmjs.org/console-browserify/0.1.6 npm http 304 https://registry.npmjs.org/jsonparse/0.0.5 npm http 304 https://registry.npmjs.org/underscore npm http 304 https://registry.npmjs.org/underscore.string npm http 304 https://registry.npmjs.org/process npm http GET https://registry.npmjs.org/concat-stream/0.0.8 npm http GET https://registry.npmjs.org/underscore.string/-/underscore.string-2.3.1.tgz npm http 304 https://registry.npmjs.org/through npm http 304 https://registry.npmjs.org/vm-browserify/0.0.1 npm http 304 https://registry.npmjs.org/crypto-browserify/0.2.1 npm http 304 https://registry.npmjs.org/buffer-browserify/0.0.5 npm http 304 https://registry.npmjs.org/http-browserify/0.1.11 npm http GET https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/sigmund npm http GET https://registry.npmjs.org/glob npm http 200 https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.2.3.tgz npm http 200 https://registry.npmjs.org/parse-base64vlq-mappings/-/parse-base64vlq-mappings-0.1.3.tgz npm http 200 https://registry.npmjs.org/convert-source-map/-/convert-source-map-0.2.5.tgz npm http 304 https://registry.npmjs.org/uglify-js npm http 304 https://registry.npmjs.org/zlib-browserify/0.0.1 npm http 200 https://registry.npmjs.org/peakle npm http 304 https://registry.npmjs.org/amdefine npm http 200 https://registry.npmjs.org/base64-js/0.0.2 npm http GET https://registry.npmjs.org/peakle/-/peakle-0.0.1.tgz npm http GET https://registry.npmjs.org/base64-js/-/base64-js-0.0.2.tgz npm http 304 https://registry.npmjs.org/shelljs npm http 304 https://registry.npmjs.org/underscore npm http 304 https://registry.npmjs.org/minimatch npm http 200 https://registry.npmjs.org/underscore.string/-/underscore.string-2.3.1.tgz npm http 200 https://registry.npmjs.org/concat-stream/0.0.8 npm http 304 https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/escodegen/0.0.15 npm http GET https://registry.npmjs.org/concat-stream/-/concat-stream-0.0.8.tgz npm http 200 https://github.com/ariya/esprima/tarball/master npm http 304 https://registry.npmjs.org/sigmund npm http 200 https://registry.npmjs.org/peakle/-/peakle-0.0.1.tgz npm http 200 https://registry.npmjs.org/base64-js/-/base64-js-0.0.2.tgz npm http 304 https://registry.npmjs.org/glob npm http 304 https://registry.npmjs.org/escodegen/0.0.15 npm http GET https://registry.npmjs.org/glob/-/glob-3.2.1.tgz npm http 200 https://registry.npmjs.org/concat-stream/-/concat-stream-0.0.8.tgz npm http GET https://registry.npmjs.org/callsite npm http GET https://registry.npmjs.org/resolve npm http 200 https://registry.npmjs.org/glob/-/glob-3.2.1.tgz npm http GET https://registry.npmjs.org/astw npm http GET https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/concat-stream/0.0.8 npm http GET https://registry.npmjs.org/source-map npm http 304 https://registry.npmjs.org/resolve npm http 304 https://registry.npmjs.org/callsite npm http 304 https://registry.npmjs.org/source-map npm http 304 https://registry.npmjs.org/concat-stream/0.0.8 npm http 304 https://registry.npmjs.org/source-map npm http 304 https://registry.npmjs.org/astw npm http GET https://registry.npmjs.org/amdefine npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/source-map npm http 304 https://registry.npmjs.org/inherits npm http 304 https://registry.npmjs.org/amdefine npm http 304 https://registry.npmjs.org/graceful-fs npm http 304 https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/amdefine npm http 304 https://registry.npmjs.org/amdefine npm http GET https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/glob npm http GET https://registry.npmjs.org/sigmund npm http 304 https://registry.npmjs.org/lru-cache npm http 304 https://registry.npmjs.org/glob npm http 304 https://registry.npmjs.org/sigmund npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/inherits npm http 304 https://registry.npmjs.org/inherits npm http 304 https://registry.npmjs.org/graceful-fs function-extended@0.0.4 node_modules/function-extended is-extended@0.0.8 node_modules/is-extended ht@0.0.2 node_modules/ht string-extended@0.0.5 node_modules/string-extended declare.js@0.0.4 node_modules/declare.js leafy@0.0.2 node_modules/leafy grunt-it@0.3.1 node_modules/grunt-it commander@1.1.1 node_modules/commander └── keypress@0.1.0 object-extended@0.0.5 node_modules/object-extended └── array-extended@0.0.4 extended@0.0.4 node_modules/extended └── extender@0.0.7 it@0.2.6 node_modules/it └── glob@3.1.21 (inherits@1.0.0, graceful-fs@1.2.1, minimatch@0.2.12) grunt-contrib-uglify@0.2.1 node_modules/grunt-contrib-uglify ├── grunt-lib-contrib@0.6.1 (zlib-browserify@0.0.1) └── uglify-js@2.3.6 (async@0.2.8, optimist@0.3.7, source-map@0.1.22) jison@0.4.4 node_modules/jison ├── lex-parser@0.1.0 ├── ebnf-parser@0.1.1 ├── jison-lex@0.2.0 ├── JSONSelect@0.4.0 ├── esprima@1.0.3 ├── nomnom@1.5.2 (colors@0.5.1, underscore@1.1.7) └── escodegen@0.0.21 (estraverse@0.0.4, source-map@0.1.22) grunt@0.4.1 node_modules/grunt ├── dateformat@1.0.2-1.2.3 ├── colors@0.6.0-1 ├── hooker@0.2.3 ├── async@0.1.22 ├── which@1.0.5 ├── eventemitter2@0.4.11 ├── underscore.string@2.2.0rc ├── coffee-script@1.3.3 ├── iconv-lite@0.2.9 ├── lodash@0.9.2 ├── glob@3.1.21 (inherits@1.0.0, graceful-fs@1.2.1) ├── minimatch@0.2.12 (sigmund@1.0.0, lru-cache@2.3.0) ├── rimraf@2.0.3 (graceful-fs@1.1.14) ├── nopt@1.0.10 (abbrev@1.0.4) ├── js-yaml@2.0.5 (esprima@1.0.3, argparse@0.1.15) └── findup-sync@0.1.2 (lodash@1.0.1) grunt-contrib-jshint@0.5.4 node_modules/grunt-contrib-jshint └── jshint@2.0.1 (console-browserify@0.1.6, underscore@1.4.4, shelljs@0.1.4, minimatch@0.2.12, cli@0.4.4-2) browserify@2.14.2 node_modules/browserify ├── inherits@1.0.0 ├── concat-stream@0.1.1 ├── shell-quote@0.0.1 ├── duplexer@0.0.4 ├── through@2.2.7 ├── optimist@0.3.7 (wordwrap@0.0.2) ├── JSONStream@0.4.4 (jsonparse@0.0.5) ├── umd@1.1.1 (through@2.3.4, ruglify@1.0.0, rfile@1.0.0, uglify-js@2.2.5) ├── browser-resolve@0.1.1 (console-browserify@0.1.6, vm-browserify@0.0.1, zlib-browserify@0.0.1, crypto-browserify@0.2.1, resolve@0.3.1, http-browserify@0.1.11, buffer-browserify@0.0.5) ├── insert-module-globals@0.2.1 (process@0.5.1, commondir@0.0.1, lexical-scope@0.0.11) ├── browser-pack@0.8.1 (uglify-js@1.3.4, combine-source-map@0.1.2) ├── module-deps@0.8.0 (through@2.3.4, resolve@0.3.1, detective@2.1.2) └── syntax-error@0.0.1 (esprima@0.9.9) grunt-browserify@1.0.2 node_modules/grunt-browserify ├── browserify-shim@2.0.3 (through@2.2.7) └── browserify@2.12.5 (concat-stream@0.1.1, inherits@1.0.0, shell-quote@0.0.1, duplexer@0.0.4, through@2.2.7, optimist@0.3.7, JSONStream@0.4.4, browser-resolve@0.1.1, insert-module-globals@0.2.1, umd@1.1.1, browser-pack@0.8.1, module-deps@0.6.2, syntax-error@0.0.1) date-extended@0.0.4 node_modules/date-extended └── grunt-contrib-jshint@0.4.3 (jshint@1.1.0) promise-extended@0.0.6 node_modules/promise-extended └── grunt-contrib-jshint@0.3.0 (jshint@1.1.0) array-extended@0.0.5 node_modules/array-extended └── grunt-contrib-jshint@0.4.3 (jshint@1.1.0)
timeout waiting to hear back from safari/6.0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
✓8.0
✓9.0
✓10.0
✓20.0
✓21.0
✓22.0
✓23.0
✓24.0
✓25.0
✓14.0
✓15.0
✓16.0
✓17.0
✓18.0
✓19.0
6.0
6.0
6.0
npm http GET https://registry.npmjs.org/grunt npm http GET https://registry.npmjs.org/string-extended npm http GET https://registry.npmjs.org/date-extended npm http GET https://registry.npmjs.org/array-extended npm http GET https://registry.npmjs.org/function-extended npm http GET https://registry.npmjs.org/declare.js npm http GET https://registry.npmjs.org/extended npm http GET https://registry.npmjs.org/is-extended npm http GET https://registry.npmjs.org/object-extended npm http GET https://registry.npmjs.org/promise-extended npm http GET https://registry.npmjs.org/leafy npm http GET https://registry.npmjs.org/ht npm http GET https://registry.npmjs.org/commander npm http GET https://registry.npmjs.org/it npm http GET https://registry.npmjs.org/jison npm http GET https://registry.npmjs.org/grunt-it npm http GET https://registry.npmjs.org/grunt-contrib-uglify npm http GET https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/grunt-browserify npm http GET https://registry.npmjs.org/browserify npm http 200 https://registry.npmjs.org/function-extended npm http 200 https://registry.npmjs.org/date-extended npm http GET https://registry.npmjs.org/function-extended/-/function-extended-0.0.4.tgz npm http GET https://registry.npmjs.org/date-extended/-/date-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/string-extended npm http GET https://registry.npmjs.org/string-extended/-/string-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/array-extended npm http 200 https://registry.npmjs.org/extended npm http GET https://registry.npmjs.org/extended/-/extended-0.0.4.tgz npm http GET https://registry.npmjs.org/array-extended/-/array-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/is-extended npm http 200 https://registry.npmjs.org/declare.js npm http GET https://registry.npmjs.org/is-extended/-/is-extended-0.0.8.tgz npm http 200 https://registry.npmjs.org/grunt npm http GET https://registry.npmjs.org/declare.js/-/declare.js-0.0.4.tgz npm http 200 https://registry.npmjs.org/object-extended npm http GET https://registry.npmjs.org/grunt/-/grunt-0.4.1.tgz npm http GET https://registry.npmjs.org/object-extended/-/object-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/ht npm http 200 https://registry.npmjs.org/leafy npm http GET https://registry.npmjs.org/ht/-/ht-0.0.2.tgz npm http GET https://registry.npmjs.org/leafy/-/leafy-0.0.2.tgz npm http 200 https://registry.npmjs.org/it npm http 200 https://registry.npmjs.org/grunt-it npm http 200 https://registry.npmjs.org/promise-extended npm http GET https://registry.npmjs.org/it/-/it-0.2.6.tgz npm http GET https://registry.npmjs.org/grunt-it/-/grunt-it-0.3.1.tgz npm http GET https://registry.npmjs.org/promise-extended/-/promise-extended-0.0.6.tgz npm http 200 https://registry.npmjs.org/commander npm http GET https://registry.npmjs.org/commander/-/commander-1.1.1.tgz npm http 200 https://registry.npmjs.org/grunt-browserify npm http 200 https://registry.npmjs.org/grunt-contrib-uglify npm http 200 https://registry.npmjs.org/jison npm http GET https://registry.npmjs.org/grunt-browserify/-/grunt-browserify-1.0.2.tgz npm http GET https://registry.npmjs.org/grunt-contrib-uglify/-/grunt-contrib-uglify-0.2.1.tgz npm http GET https://registry.npmjs.org/jison/-/jison-0.4.4.tgz npm http 200 https://registry.npmjs.org/date-extended/-/date-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/function-extended/-/function-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/string-extended/-/string-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/extended/-/extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.5.4.tgz npm http 200 https://registry.npmjs.org/declare.js/-/declare.js-0.0.4.tgz npm http 200 https://registry.npmjs.org/is-extended/-/is-extended-0.0.8.tgz npm http 200 https://registry.npmjs.org/array-extended/-/array-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/grunt/-/grunt-0.4.1.tgz npm http 200 https://registry.npmjs.org/object-extended/-/object-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/ht/-/ht-0.0.2.tgz npm http 200 https://registry.npmjs.org/leafy/-/leafy-0.0.2.tgz npm http 200 https://registry.npmjs.org/promise-extended/-/promise-extended-0.0.6.tgz npm http 200 https://registry.npmjs.org/it/-/it-0.2.6.tgz npm http 200 https://registry.npmjs.org/grunt-it/-/grunt-it-0.3.1.tgz npm http 200 https://registry.npmjs.org/commander/-/commander-1.1.1.tgz npm http 200 https://registry.npmjs.org/browserify npm http GET https://registry.npmjs.org/browserify/-/browserify-2.14.2.tgz npm http 200 https://registry.npmjs.org/grunt-browserify/-/grunt-browserify-1.0.2.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-uglify/-/grunt-contrib-uglify-0.2.1.tgz npm http 200 https://registry.npmjs.org/jison/-/jison-0.4.4.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.5.4.tgz npm http 200 https://registry.npmjs.org/browserify/-/browserify-2.14.2.tgz npm http GET https://registry.npmjs.org/keypress npm http GET https://registry.npmjs.org/array-extended/0.0.4 npm http GET https://registry.npmjs.org/jshint npm http GET https://registry.npmjs.org/JSONSelect/0.4.0 npm http GET https://registry.npmjs.org/esprima npm http GET https://registry.npmjs.org/extender npm http GET https://registry.npmjs.org/uglify-js npm http GET https://registry.npmjs.org/grunt-lib-contrib npm http GET https://registry.npmjs.org/browserify-shim npm http GET https://registry.npmjs.org/async npm http GET https://registry.npmjs.org/coffee-script npm http GET https://registry.npmjs.org/escodegen/0.0.21 npm http GET https://registry.npmjs.org/colors npm http GET https://registry.npmjs.org/jison-lex npm http GET https://registry.npmjs.org/dateformat/1.0.2-1.2.3 npm http GET https://registry.npmjs.org/ebnf-parser npm http GET https://registry.npmjs.org/eventemitter2 npm http GET https://registry.npmjs.org/lex-parser npm http GET https://registry.npmjs.org/findup-sync npm http GET https://registry.npmjs.org/nomnom/1.5.2 npm http GET https://registry.npmjs.org/glob npm http GET https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/browserify npm http GET https://registry.npmjs.org/hooker npm http GET https://registry.npmjs.org/iconv-lite npm http GET https://registry.npmjs.org/minimatch npm http GET https://registry.npmjs.org/nopt npm http GET https://registry.npmjs.org/rimraf npm http GET https://registry.npmjs.org/lodash npm http GET https://registry.npmjs.org/underscore.string npm http GET https://registry.npmjs.org/which npm http GET https://registry.npmjs.org/js-yaml npm http GET https://registry.npmjs.org/module-deps npm http GET https://registry.npmjs.org/browser-pack npm http GET https://registry.npmjs.org/shell-quote npm http GET https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/duplexer npm http GET https://registry.npmjs.org/concat-stream npm http GET https://registry.npmjs.org/insert-module-globals npm http GET https://registry.npmjs.org/syntax-error npm http GET https://registry.npmjs.org/browser-resolve npm http GET https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/optimist npm http GET https://registry.npmjs.org/JSONStream npm http GET https://registry.npmjs.org/umd npm http 200 https://registry.npmjs.org/keypress npm http GET https://registry.npmjs.org/keypress/-/keypress-0.1.0.tgz npm http 200 https://registry.npmjs.org/JSONSelect/0.4.0 npm http GET https://registry.npmjs.org/JSONSelect/-/JSONSelect-0.4.0.tgz npm http 200 https://registry.npmjs.org/array-extended/0.0.4 npm http 200 https://registry.npmjs.org/esprima npm http GET https://registry.npmjs.org/array-extended/-/array-extended-0.0.4.tgz npm http GET https://registry.npmjs.org/esprima/-/esprima-1.0.3.tgz npm http 200 https://registry.npmjs.org/extender npm http GET https://registry.npmjs.org/extender/-/extender-0.0.7.tgz npm http 200 https://registry.npmjs.org/grunt-lib-contrib npm http GET https://registry.npmjs.org/grunt-lib-contrib/-/grunt-lib-contrib-0.6.1.tgz npm http 200 https://registry.npmjs.org/browserify-shim npm http GET https://registry.npmjs.org/browserify-shim/-/browserify-shim-2.0.3.tgz npm http 200 https://registry.npmjs.org/jshint npm http GET https://registry.npmjs.org/jshint/-/jshint-2.0.1.tgz npm http 200 https://registry.npmjs.org/coffee-script npm http GET https://registry.npmjs.org/coffee-script/-/coffee-script-1.3.3.tgz npm http 200 https://registry.npmjs.org/escodegen/0.0.21 npm http GET https://registry.npmjs.org/escodegen/-/escodegen-0.0.21.tgz npm http 200 https://registry.npmjs.org/colors npm http GET https://registry.npmjs.org/colors/-/colors-0.6.0-1.tgz npm http 200 https://registry.npmjs.org/jison-lex npm http GET https://registry.npmjs.org/jison-lex/-/jison-lex-0.2.0.tgz npm http 200 https://registry.npmjs.org/dateformat/1.0.2-1.2.3 npm http GET https://registry.npmjs.org/dateformat/-/dateformat-1.0.2-1.2.3.tgz npm http 200 https://registry.npmjs.org/ebnf-parser npm http GET https://registry.npmjs.org/ebnf-parser/-/ebnf-parser-0.1.1.tgz npm http 200 https://registry.npmjs.org/uglify-js npm http 200 https://registry.npmjs.org/lex-parser npm http 200 https://registry.npmjs.org/findup-sync npm http GET https://registry.npmjs.org/uglify-js/-/uglify-js-2.3.6.tgz npm http GET https://registry.npmjs.org/lex-parser/-/lex-parser-0.1.0.tgz npm http 200 https://registry.npmjs.org/async npm http 304 https://registry.npmjs.org/grunt-contrib-jshint npm http 200 https://registry.npmjs.org/nomnom/1.5.2 npm http 200 https://registry.npmjs.org/eventemitter2 npm http GET https://registry.npmjs.org/findup-sync/-/findup-sync-0.1.2.tgz npm http GET https://registry.npmjs.org/async/-/async-0.1.22.tgz npm http GET https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.3.0.tgz npm http GET https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.11.tgz npm http GET https://registry.npmjs.org/nomnom/-/nomnom-1.5.2.tgz npm http 304 https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.4.3.tgz npm http 304 https://registry.npmjs.org/browserify npm http 200 https://registry.npmjs.org/glob npm http 200 https://registry.npmjs.org/hooker npm http 200 https://registry.npmjs.org/iconv-lite npm http 200 https://registry.npmjs.org/minimatch npm http GET https://registry.npmjs.org/browserify/-/browserify-2.12.5.tgz npm http GET https://registry.npmjs.org/glob/-/glob-3.1.21.tgz npm http GET https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz npm http GET https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.2.9.tgz npm http GET https://registry.npmjs.org/minimatch/-/minimatch-0.2.12.tgz npm http 200 https://registry.npmjs.org/nopt npm http GET https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz npm http 200 https://registry.npmjs.org/rimraf npm http GET https://registry.npmjs.org/rimraf/-/rimraf-2.0.3.tgz npm http 200 https://registry.npmjs.org/underscore.string npm http 200 https://registry.npmjs.org/which npm http GET https://registry.npmjs.org/underscore.string/-/underscore.string-2.2.0rc.tgz npm http GET https://registry.npmjs.org/which/-/which-1.0.5.tgz npm http 200 https://registry.npmjs.org/js-yaml npm http GET https://registry.npmjs.org/js-yaml/-/js-yaml-2.0.5.tgz npm http 200 https://registry.npmjs.org/module-deps npm http GET https://registry.npmjs.org/module-deps/-/module-deps-0.8.0.tgz npm http 200 https://registry.npmjs.org/shell-quote npm http 200 https://registry.npmjs.org/browser-pack npm http GET https://registry.npmjs.org/shell-quote/-/shell-quote-0.0.1.tgz npm http GET https://registry.npmjs.org/browser-pack/-/browser-pack-0.8.1.tgz npm http 200 https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/through/-/through-2.2.7.tgz npm http 200 https://registry.npmjs.org/duplexer npm http 200 https://registry.npmjs.org/concat-stream npm http GET https://registry.npmjs.org/duplexer/-/duplexer-0.0.4.tgz npm http 200 https://registry.npmjs.org/insert-module-globals npm http GET https://registry.npmjs.org/concat-stream/-/concat-stream-0.1.1.tgz npm http GET https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-0.2.1.tgz npm http 200 https://registry.npmjs.org/lodash npm http 200 https://registry.npmjs.org/syntax-error npm http 200 https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/lodash/-/lodash-0.9.2.tgz npm http GET https://registry.npmjs.org/syntax-error/-/syntax-error-0.0.1.tgz npm http GET https://registry.npmjs.org/inherits/-/inherits-1.0.0.tgz npm http 200 https://registry.npmjs.org/optimist npm http 200 https://registry.npmjs.org/keypress/-/keypress-0.1.0.tgz npm http 200 https://registry.npmjs.org/browser-resolve npm http GET https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz npm http GET https://registry.npmjs.org/browser-resolve/-/browser-resolve-0.1.1.tgz npm http 200 https://registry.npmjs.org/JSONSelect/-/JSONSelect-0.4.0.tgz npm http 200 https://registry.npmjs.org/array-extended/-/array-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/umd npm http GET https://registry.npmjs.org/umd/-/umd-1.1.1.tgz npm http 200 https://registry.npmjs.org/JSONStream npm http 200 https://registry.npmjs.org/esprima/-/esprima-1.0.3.tgz npm http GET https://registry.npmjs.org/JSONStream/-/JSONStream-0.4.4.tgz npm http 200 https://registry.npmjs.org/browserify-shim/-/browserify-shim-2.0.3.tgz npm http 200 https://registry.npmjs.org/grunt-lib-contrib/-/grunt-lib-contrib-0.6.1.tgz npm http 200 https://registry.npmjs.org/extender/-/extender-0.0.7.tgz npm http 200 https://registry.npmjs.org/jshint/-/jshint-2.0.1.tgz npm http 200 https://registry.npmjs.org/coffee-script/-/coffee-script-1.3.3.tgz npm http 200 https://registry.npmjs.org/colors/-/colors-0.6.0-1.tgz npm http 200 https://registry.npmjs.org/jison-lex/-/jison-lex-0.2.0.tgz npm http 200 https://registry.npmjs.org/escodegen/-/escodegen-0.0.21.tgz npm http 200 https://registry.npmjs.org/uglify-js/-/uglify-js-2.3.6.tgz npm http 200 https://registry.npmjs.org/dateformat/-/dateformat-1.0.2-1.2.3.tgz npm http 200 https://registry.npmjs.org/ebnf-parser/-/ebnf-parser-0.1.1.tgz npm http 200 https://registry.npmjs.org/lex-parser/-/lex-parser-0.1.0.tgz npm http 200 https://registry.npmjs.org/findup-sync/-/findup-sync-0.1.2.tgz npm http 200 https://registry.npmjs.org/async/-/async-0.1.22.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.3.0.tgz npm http 200 https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.11.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.4.3.tgz npm http 200 https://registry.npmjs.org/nomnom/-/nomnom-1.5.2.tgz npm http 200 https://registry.npmjs.org/browserify/-/browserify-2.12.5.tgz npm http 200 https://registry.npmjs.org/glob/-/glob-3.1.21.tgz npm http 200 https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz npm http 200 https://registry.npmjs.org/underscore.string/-/underscore.string-2.2.0rc.tgz npm http 200 https://registry.npmjs.org/minimatch/-/minimatch-0.2.12.tgz npm http 200 https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.2.9.tgz npm http 200 https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz npm http 200 https://registry.npmjs.org/rimraf/-/rimraf-2.0.3.tgz npm http 200 https://registry.npmjs.org/which/-/which-1.0.5.tgz npm http 200 https://registry.npmjs.org/js-yaml/-/js-yaml-2.0.5.tgz npm http 200 https://registry.npmjs.org/module-deps/-/module-deps-0.8.0.tgz npm http 200 https://registry.npmjs.org/shell-quote/-/shell-quote-0.0.1.tgz npm http 200 https://registry.npmjs.org/browser-pack/-/browser-pack-0.8.1.tgz npm http 200 https://registry.npmjs.org/through/-/through-2.2.7.tgz npm http 200 https://registry.npmjs.org/duplexer/-/duplexer-0.0.4.tgz npm http 200 https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-0.2.1.tgz npm http 200 https://registry.npmjs.org/concat-stream/-/concat-stream-0.1.1.tgz npm http 200 https://registry.npmjs.org/lodash/-/lodash-0.9.2.tgz npm http 200 https://registry.npmjs.org/syntax-error/-/syntax-error-0.0.1.tgz npm http 200 https://registry.npmjs.org/inherits/-/inherits-1.0.0.tgz npm http GET https://registry.npmjs.org/jshint npm http 200 https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz npm http 200 https://registry.npmjs.org/browser-resolve/-/browser-resolve-0.1.1.tgz npm http 200 https://registry.npmjs.org/umd/-/umd-1.1.1.tgz npm http 200 https://registry.npmjs.org/JSONStream/-/JSONStream-0.4.4.tgz npm http 304 https://registry.npmjs.org/jshint npm http GET https://registry.npmjs.org/jshint/-/jshint-1.1.0.tgz npm http GET https://registry.npmjs.org/zlib-browserify/0.0.1 npm http GET https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/estraverse npm http GET https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/colors npm http GET https://registry.npmjs.org/minimatch npm http GET https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/async npm http 200 https://registry.npmjs.org/jshint/-/jshint-1.1.0.tgz npm http 200 https://registry.npmjs.org/zlib-browserify/0.0.1 npm http GET https://registry.npmjs.org/zlib-browserify/-/zlib-browserify-0.0.1.tgz npm http 200 https://registry.npmjs.org/estraverse npm http GET https://registry.npmjs.org/estraverse/-/estraverse-0.0.4.tgz npm http 200 https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/underscore/-/underscore-1.1.7.tgz npm http 200 https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.1.tgz npm http 304 https://registry.npmjs.org/colors npm http GET https://registry.npmjs.org/colors/-/colors-0.5.1.tgz npm http 304 https://registry.npmjs.org/minimatch npm http 304 https://registry.npmjs.org/inherits npm http 200 https://registry.npmjs.org/zlib-browserify/-/zlib-browserify-0.0.1.tgz npm http 304 https://registry.npmjs.org/async npm http 200 https://registry.npmjs.org/source-map npm http 200 https://registry.npmjs.org/source-map npm http 200 https://registry.npmjs.org/estraverse/-/estraverse-0.0.4.tgz npm http 200 https://registry.npmjs.org/underscore/-/underscore-1.1.7.tgz npm http 200 https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.1.tgz npm http GET https://registry.npmjs.org/source-map/-/source-map-0.1.22.tgz npm http 200 https://registry.npmjs.org/colors/-/colors-0.5.1.tgz npm http GET https://registry.npmjs.org/async/-/async-0.2.8.tgz npm http 200 https://registry.npmjs.org/async/-/async-0.2.8.tgz npm http 200 https://registry.npmjs.org/source-map/-/source-map-0.1.22.tgz npm http GET https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/sigmund npm http 200 https://registry.npmjs.org/sigmund npm http 200 https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/sigmund/-/sigmund-1.0.0.tgz npm http GET https://registry.npmjs.org/lru-cache/-/lru-cache-2.3.0.tgz npm http 200 https://registry.npmjs.org/sigmund/-/sigmund-1.0.0.tgz npm http 200 https://registry.npmjs.org/lru-cache/-/lru-cache-2.3.0.tgz npm http GET https://registry.npmjs.org/rfile npm http GET https://registry.npmjs.org/ruglify npm http GET https://registry.npmjs.org/uglify-js/1.3.4 npm http GET https://registry.npmjs.org/combine-source-map npm http GET https://registry.npmjs.org/wordwrap npm http GET https://registry.npmjs.org/resolve npm http GET https://registry.npmjs.org/amdefine npm http GET https://registry.npmjs.org/commondir npm http GET https://registry.npmjs.org/lexical-scope npm http GET https://registry.npmjs.org/resolve/0.3.1 npm http GET https://registry.npmjs.org/console-browserify/0.1.6 npm http GET https://registry.npmjs.org/detective npm http GET https://registry.npmjs.org/process npm http GET https://registry.npmjs.org/vm-browserify/0.0.1 npm http GET https://registry.npmjs.org/crypto-browserify/0.2.1 npm http GET https://registry.npmjs.org/http-browserify/0.1.11 npm http GET https://registry.npmjs.org/buffer-browserify/0.0.5 npm http GET https://registry.npmjs.org/esprima npm http GET https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/uglify-js npm http GET https://registry.npmjs.org/zlib-browserify/0.0.1 npm http GET https://registry.npmjs.org/jsonparse/0.0.5 npm http GET https://registry.npmjs.org/abbrev npm http GET https://registry.npmjs.org/argparse npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/module-deps npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/browser-pack npm http GET https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/esprima npm http GET https://registry.npmjs.org/lodash npm http GET https://registry.npmjs.org/shell-quote npm http GET https://registry.npmjs.org/duplexer npm http GET https://registry.npmjs.org/concat-stream npm http GET https://registry.npmjs.org/insert-module-globals npm http GET https://registry.npmjs.org/syntax-error npm http GET https://registry.npmjs.org/browser-resolve npm http GET https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/optimist npm http GET https://registry.npmjs.org/umd npm http GET https://registry.npmjs.org/JSONStream npm http 200 https://registry.npmjs.org/combine-source-map npm http 200 https://registry.npmjs.org/wordwrap npm http GET https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.1.2.tgz npm http GET https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz npm http 200 https://registry.npmjs.org/rfile npm http 200 https://registry.npmjs.org/ruglify npm http GET https://registry.npmjs.org/rfile/-/rfile-1.0.0.tgz npm http GET https://registry.npmjs.org/ruglify/-/ruglify-1.0.0.tgz npm http 200 https://registry.npmjs.org/uglify-js/1.3.4 npm http GET https://registry.npmjs.org/uglify-js/-/uglify-js-1.3.4.tgz npm http 200 https://registry.npmjs.org/amdefine npm http GET https://registry.npmjs.org/amdefine/-/amdefine-0.0.5.tgz npm http 200 https://registry.npmjs.org/resolve npm http 200 https://registry.npmjs.org/commondir npm http GET https://registry.npmjs.org/commondir/-/commondir-0.0.1.tgz npm http 200 https://registry.npmjs.org/lexical-scope npm http 200 https://registry.npmjs.org/resolve/0.3.1 npm http 200 https://registry.npmjs.org/console-browserify/0.1.6 npm http GET https://registry.npmjs.org/resolve/-/resolve-0.3.1.tgz npm http GET https://registry.npmjs.org/lexical-scope/-/lexical-scope-0.0.11.tgz npm http GET https://registry.npmjs.org/console-browserify/-/console-browserify-0.1.6.tgz npm http 200 https://registry.npmjs.org/detective npm http GET https://registry.npmjs.org/detective/-/detective-2.1.2.tgz npm http 200 https://registry.npmjs.org/process npm http GET https://registry.npmjs.org/process/-/process-0.5.1.tgz npm http 200 https://registry.npmjs.org/vm-browserify/0.0.1 npm http GET https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.1.tgz npm http 200 https://registry.npmjs.org/crypto-browserify/0.2.1 npm http 200 https://registry.npmjs.org/buffer-browserify/0.0.5 npm http 200 https://registry.npmjs.org/http-browserify/0.1.11 npm http GET https://registry.npmjs.org/buffer-browserify/-/buffer-browserify-0.0.5.tgz npm http GET https://registry.npmjs.org/http-browserify/-/http-browserify-0.1.11.tgz npm http 304 https://registry.npmjs.org/esprima npm http GET https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-0.2.1.tgz npm http 304 https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/esprima/-/esprima-0.9.9.tgz npm http 304 https://registry.npmjs.org/zlib-browserify/0.0.1 npm http 304 https://registry.npmjs.org/through npm http 304 https://registry.npmjs.org/through npm http 304 https://registry.npmjs.org/uglify-js npm http GET https://registry.npmjs.org/through/-/through-2.3.4.tgz npm http 200 https://registry.npmjs.org/jsonparse/0.0.5 npm http GET https://registry.npmjs.org/uglify-js/-/uglify-js-2.2.5.tgz npm http GET https://registry.npmjs.org/jsonparse/-/jsonparse-0.0.5.tgz npm http 304 https://registry.npmjs.org/module-deps npm http 304 https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.14.tgz npm http GET https://registry.npmjs.org/module-deps/-/module-deps-0.6.2.tgz npm http 304 https://registry.npmjs.org/graceful-fs npm http 200 https://registry.npmjs.org/abbrev npm http GET https://registry.npmjs.org/abbrev/-/abbrev-1.0.4.tgz npm http 304 https://registry.npmjs.org/browser-pack npm http 304 https://registry.npmjs.org/inherits npm http 304 https://registry.npmjs.org/esprima npm http 304 https://registry.npmjs.org/lodash npm http 200 https://registry.npmjs.org/argparse npm http 304 https://registry.npmjs.org/shell-quote npm http GET https://registry.npmjs.org/lodash/-/lodash-1.0.1.tgz npm http GET https://registry.npmjs.org/argparse/-/argparse-0.1.15.tgz npm http 304 https://registry.npmjs.org/insert-module-globals npm http 304 https://registry.npmjs.org/concat-stream npm http 304 https://registry.npmjs.org/duplexer npm http 304 https://registry.npmjs.org/umd npm http 304 https://registry.npmjs.org/optimist npm http 304 https://registry.npmjs.org/inherits npm http 304 https://registry.npmjs.org/syntax-error npm http 304 https://registry.npmjs.org/browser-resolve npm http 200 https://registry.npmjs.org/ruglify/-/ruglify-1.0.0.tgz npm http 304 https://registry.npmjs.org/JSONStream npm http 200 https://registry.npmjs.org/rfile/-/rfile-1.0.0.tgz npm http 200 https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.1.2.tgz npm http 200 https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz npm http 200 https://registry.npmjs.org/uglify-js/-/uglify-js-1.3.4.tgz npm http 200 https://registry.npmjs.org/commondir/-/commondir-0.0.1.tgz npm http 200 https://registry.npmjs.org/resolve/-/resolve-0.3.1.tgz npm http 200 https://registry.npmjs.org/amdefine/-/amdefine-0.0.5.tgz npm http 200 https://registry.npmjs.org/lexical-scope/-/lexical-scope-0.0.11.tgz npm http 200 https://registry.npmjs.org/console-browserify/-/console-browserify-0.1.6.tgz npm http 200 https://registry.npmjs.org/detective/-/detective-2.1.2.tgz npm http 200 https://registry.npmjs.org/process/-/process-0.5.1.tgz npm http 200 https://registry.npmjs.org/buffer-browserify/-/buffer-browserify-0.0.5.tgz npm http 200 https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-0.2.1.tgz npm http 200 https://registry.npmjs.org/http-browserify/-/http-browserify-0.1.11.tgz npm http 200 https://registry.npmjs.org/esprima/-/esprima-0.9.9.tgz npm http 200 https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.1.tgz npm http 200 https://registry.npmjs.org/uglify-js/-/uglify-js-2.2.5.tgz npm http 200 https://registry.npmjs.org/through/-/through-2.3.4.tgz npm http 200 https://registry.npmjs.org/jsonparse/-/jsonparse-0.0.5.tgz npm http 200 https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.14.tgz npm http 200 https://registry.npmjs.org/module-deps/-/module-deps-0.6.2.tgz npm http 200 https://registry.npmjs.org/abbrev/-/abbrev-1.0.4.tgz npm http 200 https://registry.npmjs.org/lodash/-/lodash-1.0.1.tgz npm http 200 https://registry.npmjs.org/argparse/-/argparse-0.1.15.tgz npm WARN prefer global jison@0.4.4 should be installed with -g npm http GET https://registry.npmjs.org/esprima/1.0.2 npm http GET https://registry.npmjs.org/escodegen/0.0.15 npm http GET https://registry.npmjs.org/astw npm http GET https://registry.npmjs.org/ruglify npm http GET https://registry.npmjs.org/rfile npm http GET https://registry.npmjs.org/combine-source-map npm http GET https://registry.npmjs.org/resolve npm http GET https://registry.npmjs.org/wordwrap npm http GET https://registry.npmjs.org/detective npm http GET https://registry.npmjs.org/commondir npm http GET https://registry.npmjs.org/lexical-scope npm http GET https://registry.npmjs.org/resolve/0.3.1 npm http GET https://registry.npmjs.org/console-browserify/0.1.6 npm http GET https://registry.npmjs.org/jsonparse/0.0.5 npm http GET https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/process npm http GET https://registry.npmjs.org/vm-browserify/0.0.1 npm http GET https://registry.npmjs.org/uglify-js npm http GET https://registry.npmjs.org/crypto-browserify/0.2.1 npm http GET https://registry.npmjs.org/buffer-browserify/0.0.5 npm http GET https://registry.npmjs.org/zlib-browserify/0.0.1 npm http 200 https://registry.npmjs.org/esprima/1.0.2 npm http 200 https://registry.npmjs.org/escodegen/0.0.15 npm http GET https://registry.npmjs.org/callsite npm http GET https://registry.npmjs.org/esprima/-/esprima-1.0.2.tgz npm http GET https://registry.npmjs.org/escodegen/-/escodegen-0.0.15.tgz npm http 200 https://registry.npmjs.org/astw npm http GET https://registry.npmjs.org/underscore.string npm http GET https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/astw/-/astw-0.0.0.tgz npm http 304 https://registry.npmjs.org/combine-source-map npm http 304 https://registry.npmjs.org/resolve npm http 304 https://registry.npmjs.org/rfile npm http GET https://registry.npmjs.org/source-map npm http 304 https://registry.npmjs.org/wordwrap npm http 304 https://registry.npmjs.org/ruglify npm http GET https://registry.npmjs.org/convert-source-map npm http GET https://registry.npmjs.org/parse-base64vlq-mappings npm http GET https://registry.npmjs.org/shelljs npm http GET https://registry.npmjs.org/inline-source-map npm http GET https://registry.npmjs.org/cli npm http GET https://registry.npmjs.org/console-browserify npm http GET https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/minimatch npm http 304 https://registry.npmjs.org/detective npm http 304 https://registry.npmjs.org/lexical-scope npm http 304 https://registry.npmjs.org/commondir npm http 304 https://registry.npmjs.org/resolve/0.3.1 npm http GET https://registry.npmjs.org/base64-js/0.0.2 npm http 304 https://registry.npmjs.org/jsonparse/0.0.5 npm http 304 https://registry.npmjs.org/process npm http 304 https://registry.npmjs.org/through npm http 304 https://registry.npmjs.org/console-browserify/0.1.6 npm http 304 https://registry.npmjs.org/vm-browserify/0.0.1 npm http 200 https://registry.npmjs.org/callsite npm http 304 https://registry.npmjs.org/uglify-js npm http 304 https://registry.npmjs.org/zlib-browserify/0.0.1 npm http 304 https://registry.npmjs.org/crypto-browserify/0.2.1 npm http 304 https://registry.npmjs.org/buffer-browserify/0.0.5 npm http GET https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz npm http 304 https://registry.npmjs.org/underscore.string npm http 200 https://registry.npmjs.org/escodegen/-/escodegen-0.0.15.tgz npm http 304 https://registry.npmjs.org/underscore npm http 200 https://registry.npmjs.org/astw/-/astw-0.0.0.tgz npm http 200 https://registry.npmjs.org/esprima/-/esprima-1.0.2.tgz npm http GET https://registry.npmjs.org/underscore/-/underscore-1.4.4.tgz npm http GET https://registry.npmjs.org/underscore.string/-/underscore.string-2.3.1.tgz npm http 200 https://registry.npmjs.org/parse-base64vlq-mappings npm http 304 https://registry.npmjs.org/source-map npm http 200 https://registry.npmjs.org/convert-source-map npm http GET https://registry.npmjs.org/parse-base64vlq-mappings/-/parse-base64vlq-mappings-0.1.3.tgz npm http GET https://registry.npmjs.org/convert-source-map/-/convert-source-map-0.2.5.tgz npm http 200 https://registry.npmjs.org/inline-source-map npm http 200 https://registry.npmjs.org/console-browserify npm http 304 https://registry.npmjs.org/underscore npm http 200 https://registry.npmjs.org/shelljs npm http GET https://registry.npmjs.org/concat-stream/0.0.8 npm http GET https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.2.3.tgz npm http GET https://registry.npmjs.org/shelljs/-/shelljs-0.1.4.tgz npm http 200 https://registry.npmjs.org/cli npm http GET https://registry.npmjs.org/resolve npm http GET https://registry.npmjs.org/cli/-/cli-0.4.4-2.tgz npm http 304 https://registry.npmjs.org/minimatch npm http 200 https://registry.npmjs.org/base64-js/0.0.2 npm http 200 https://registry.npmjs.org/underscore/-/underscore-1.4.4.tgz npm http 200 https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz npm http GET https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/base64-js/-/base64-js-0.0.2.tgz npm http 200 https://registry.npmjs.org/underscore.string/-/underscore.string-2.3.1.tgz npm http 200 https://registry.npmjs.org/parse-base64vlq-mappings/-/parse-base64vlq-mappings-0.1.3.tgz npm http 200 https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.2.3.tgz npm http 200 https://registry.npmjs.org/convert-source-map/-/convert-source-map-0.2.5.tgz npm http 200 https://registry.npmjs.org/concat-stream/0.0.8 npm http GET https://registry.npmjs.org/concat-stream/-/concat-stream-0.0.8.tgz npm http GET https://registry.npmjs.org/amdefine npm http 304 https://registry.npmjs.org/resolve npm http 304 https://registry.npmjs.org/source-map npm http 200 https://registry.npmjs.org/cli/-/cli-0.4.4-2.tgz npm http 200 https://registry.npmjs.org/shelljs/-/shelljs-0.1.4.tgz npm http 200 https://registry.npmjs.org/base64-js/-/base64-js-0.0.2.tgz npm http 200 https://registry.npmjs.org/concat-stream/-/concat-stream-0.0.8.tgz npm http 304 https://registry.npmjs.org/amdefine npm http GET https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/amdefine npm http 304 https://registry.npmjs.org/source-map npm http 304 https://registry.npmjs.org/amdefine npm http GET https://registry.npmjs.org/peakle npm http GET https://github.com/ariya/esprima/tarball/master npm http GET https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/cli npm http GET https://registry.npmjs.org/minimatch npm http GET https://registry.npmjs.org/amdefine npm http 200 https://registry.npmjs.org/peakle npm http GET https://registry.npmjs.org/peakle/-/peakle-0.0.1.tgz npm http GET https://registry.npmjs.org/sigmund npm http GET https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/glob npm http 304 https://registry.npmjs.org/cli npm http 304 https://registry.npmjs.org/underscore npm http 304 https://registry.npmjs.org/minimatch npm http 304 https://registry.npmjs.org/lru-cache npm http 304 https://registry.npmjs.org/sigmund npm http 304 https://registry.npmjs.org/glob npm http GET https://registry.npmjs.org/glob/-/glob-3.2.1.tgz npm http 304 https://registry.npmjs.org/amdefine npm http 200 https://registry.npmjs.org/peakle/-/peakle-0.0.1.tgz npm http 200 https://github.com/ariya/esprima/tarball/master npm http GET https://registry.npmjs.org/source-map npm http 200 https://registry.npmjs.org/glob/-/glob-3.2.1.tgz npm http 304 https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/amdefine npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/inherits npm http 304 https://registry.npmjs.org/amdefine npm http 304 https://registry.npmjs.org/inherits npm http 304 https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/sigmund npm http GET https://registry.npmjs.org/glob npm http 304 https://registry.npmjs.org/glob npm http 304 https://registry.npmjs.org/lru-cache npm http 304 https://registry.npmjs.org/sigmund npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/inherits npm http 304 https://registry.npmjs.org/graceful-fs npm http 304 https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/inherits npm http 304 https://registry.npmjs.org/graceful-fs npm http 304 https://registry.npmjs.org/inherits function-extended@0.0.4 node_modules/function-extended is-extended@0.0.8 node_modules/is-extended ht@0.0.2 node_modules/ht string-extended@0.0.5 node_modules/string-extended declare.js@0.0.4 node_modules/declare.js leafy@0.0.2 node_modules/leafy grunt-it@0.3.1 node_modules/grunt-it commander@1.1.1 node_modules/commander └── keypress@0.1.0 extended@0.0.4 node_modules/extended └── extender@0.0.7 object-extended@0.0.5 node_modules/object-extended └── array-extended@0.0.4 it@0.2.6 node_modules/it └── glob@3.1.21 (inherits@1.0.0, graceful-fs@1.2.1, minimatch@0.2.12) grunt-contrib-uglify@0.2.1 node_modules/grunt-contrib-uglify ├── grunt-lib-contrib@0.6.1 (zlib-browserify@0.0.1) └── uglify-js@2.3.6 (async@0.2.8, optimist@0.3.7, source-map@0.1.22) jison@0.4.4 node_modules/jison ├── lex-parser@0.1.0 ├── ebnf-parser@0.1.1 ├── jison-lex@0.2.0 ├── esprima@1.0.3 ├── JSONSelect@0.4.0 ├── nomnom@1.5.2 (colors@0.5.1, underscore@1.1.7) └── escodegen@0.0.21 (estraverse@0.0.4, source-map@0.1.22) grunt@0.4.1 node_modules/grunt ├── dateformat@1.0.2-1.2.3 ├── colors@0.6.0-1 ├── hooker@0.2.3 ├── async@0.1.22 ├── eventemitter2@0.4.11 ├── underscore.string@2.2.0rc ├── which@1.0.5 ├── coffee-script@1.3.3 ├── iconv-lite@0.2.9 ├── lodash@0.9.2 ├── minimatch@0.2.12 (sigmund@1.0.0, lru-cache@2.3.0) ├── glob@3.1.21 (graceful-fs@1.2.1, inherits@1.0.0) ├── rimraf@2.0.3 (graceful-fs@1.1.14) ├── nopt@1.0.10 (abbrev@1.0.4) ├── findup-sync@0.1.2 (lodash@1.0.1) └── js-yaml@2.0.5 (esprima@1.0.3, argparse@0.1.15) grunt-contrib-jshint@0.5.4 node_modules/grunt-contrib-jshint └── jshint@2.0.1 (console-browserify@0.1.6, underscore@1.4.4, shelljs@0.1.4, minimatch@0.2.12, cli@0.4.4-2) browserify@2.14.2 node_modules/browserify ├── inherits@1.0.0 ├── concat-stream@0.1.1 ├── shell-quote@0.0.1 ├── duplexer@0.0.4 ├── through@2.2.7 ├── optimist@0.3.7 (wordwrap@0.0.2) ├── JSONStream@0.4.4 (jsonparse@0.0.5) ├── umd@1.1.1 (through@2.3.4, ruglify@1.0.0, rfile@1.0.0, uglify-js@2.2.5) ├── browser-resolve@0.1.1 (console-browserify@0.1.6, zlib-browserify@0.0.1, vm-browserify@0.0.1, crypto-browserify@0.2.1, resolve@0.3.1, http-browserify@0.1.11, buffer-browserify@0.0.5) ├── browser-pack@0.8.1 (uglify-js@1.3.4, combine-source-map@0.1.2) ├── insert-module-globals@0.2.1 (process@0.5.1, commondir@0.0.1, lexical-scope@0.0.11) ├── module-deps@0.8.0 (through@2.3.4, resolve@0.3.1, detective@2.1.2) └── syntax-error@0.0.1 (esprima@0.9.9) grunt-browserify@1.0.2 node_modules/grunt-browserify ├── browserify-shim@2.0.3 (through@2.2.7) └── browserify@2.12.5 (inherits@1.0.0, concat-stream@0.1.1, shell-quote@0.0.1, duplexer@0.0.4, through@2.2.7, optimist@0.3.7, JSONStream@0.4.4, browser-resolve@0.1.1, umd@1.1.1, browser-pack@0.8.1, insert-module-globals@0.2.1, module-deps@0.6.2, syntax-error@0.0.1) date-extended@0.0.4 node_modules/date-extended └── grunt-contrib-jshint@0.4.3 (jshint@1.1.0) array-extended@0.0.5 node_modules/array-extended └── grunt-contrib-jshint@0.4.3 (jshint@1.1.0) promise-extended@0.0.6 node_modules/promise-extended └── grunt-contrib-jshint@0.3.0 (jshint@1.1.0)
timeout waiting to hear back from safari/6.0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: errors: should handle errors ok 38 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 40 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 41 Flow: not rule: with multiple facts: should fire rules in order ok 42 Flow: or rule: should call when a string equals 'hello' ok 43 Flow: or rule: should call when a string equals 'world' ok 44 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 45 Flow: scope option: should call when a string equals 'hello' ok 46 Flow: scope option: should call when a string equals 'world' ok 47 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 48 Flow: events: should emit when facts are asserted ok 49 Flow: events: should emit when facts are retracted ok 50 Flow: events: should emit when facts are modified ok 51 Flow: events: should emit when rules are fired ok 52 Flow: matchUntilHalt: should match until halt is called ok 53 Flow: fibonacci: should calculate fibonacci 3 ok 54 Flow: fibonacci: should calculate fibonacci 4 ok 55 Flow: fibonacci: should calculate fibonacci 5 ok 56 Flow: fibonacci: should calculate fibonacci 6 ok 57 Flow: diagnosis: should treat properly ok 58 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 60 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 61 Flow compiled: or rule: should call when a string equals 'hello' ok 62 Flow compiled: scoped functions: should call the scoped function ok 63 Flow compiled: events: should emit when facts are asserted ok 64 Flow compiled: events: should emit when facts are retracted ok 65 Flow compiled: events: should emit when facts are modified ok 66 Flow compiled: events: should emit when rules are fired ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 70 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 71 Flow compiled: diagnosis using dsl: should treat properly ok 72 nools dsl parser: parsing define: should parse a define statement ok 73 nools dsl parser: parsing define: global: should parse a function call statement ok 74 nools dsl parser: parsing define: global: should parse a member look up ok 75 nools dsl parser: parsing define: global: should parse a strings ok 76 nools dsl parser: parsing define: global: should parse a boolean ok 77 nools dsl parser: parsing define: global: should parse numbers ok 78 nools dsl parser: parsing define: global: should parse a new instantiation ok 79 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 80 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 82 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 83 nools dsl parser: parsing function: should parse a function statement ok 84 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 85 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 86 nools dsl parser: parsing rules: should parse rules ok 87 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 88 nools dsl parser: parsing rules: should throw an error for a missing name ok 89 nools dsl parser: parsing rules: should parse not conditions ok 90 nools dsl parser: parsing rules: should parse or conditions ok 91 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 92 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 94 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 95 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 96 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 97 A Parser: should parse valid string expressions ok 98 A Parser: should parse valid string expressions with functions ok 99 A Parser: should parse valid string expressions with property access ok 100 A Parser: should parse valid string expressions with boolean operators ok 101 A Parser: should handle operator associativity properly ok 102 A Parser: should parse arrays ok 103 A Parser: should parse the in operator ok 104 A Parser: should parse the notIn operator ok 105 Rule: createRule: with strings: should create for string ok 106 Rule: createRule: with strings: should create for String ok 107 Rule: createRule: with strings: should create for number ok 108 Rule: createRule: with strings: should create for Number ok 109 Rule: createRule: with strings: should create for date ok 110 Rule: createRule: with strings: should create for Date ok 111 Rule: createRule: with strings: should create for array ok 112 Rule: createRule: with strings: should create for Array ok 113 Rule: createRule: with strings: should create for boolean ok 114 Rule: createRule: with strings: should create for Boolean ok 115 Rule: createRule: with strings: should create for regexp ok 116 Rule: createRule: with strings: should create for Regexp ok 117 Rule: createRule: with strings: should create for object ok 118 Rule: createRule: with strings: should create for Object ok 119 Rule: createRule: with strings: should create for hash ok 120 Rule: createRule: with strings: should create for Hash ok 121 Rule: createRule: with functions: should create for String function ok 122 Rule: createRule: with functions: should create for Number function ok 123 Rule: createRule: with functions: should create for Date function ok 124 Rule: createRule: with functions: should create for [] ok 125 Rule: createRule: with functions: should create for Array function ok 126 Rule: createRule: with functions: should create for Boolean function ok 127 Rule: createRule: with functions: should create for RegExp function ok 128 Rule: createRule: with functions: should create for Object function ok 129 Rule: createRule: with functions: should create for custom functions ok 130 Rule: createRule: should should create a composite rule ok 131 Rule: createRule: should should create a not pattern ok 132 Rule: createRule: should should create a or pattern # tests 132 # pass 132 # fail 0
1..132 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator
✓8.0
✓9.0
✓10.0
✓20.0
✓21.0
✓22.0
✓23.0
✓24.0
✓25.0
✓14.0
✓15.0
✓16.0
✓17.0
✓18.0
✓19.0
6.0
6.0
6.0
npm http GET https://registry.npmjs.org/grunt npm http GET https://registry.npmjs.org/declare.js npm http GET https://registry.npmjs.org/extended npm http GET https://registry.npmjs.org/is-extended npm http GET https://registry.npmjs.org/string-extended npm http GET https://registry.npmjs.org/array-extended npm http GET https://registry.npmjs.org/date-extended npm http GET https://registry.npmjs.org/function-extended npm http GET https://registry.npmjs.org/object-extended npm http GET https://registry.npmjs.org/promise-extended npm http GET https://registry.npmjs.org/leafy npm http GET https://registry.npmjs.org/ht npm http GET https://registry.npmjs.org/commander npm http GET https://registry.npmjs.org/it npm http GET https://registry.npmjs.org/jison npm http GET https://registry.npmjs.org/grunt-it npm http GET https://registry.npmjs.org/grunt-contrib-uglify npm http GET https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/grunt-browserify npm http GET https://registry.npmjs.org/browserify npm http 200 https://registry.npmjs.org/extended npm http GET https://registry.npmjs.org/extended/-/extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/declare.js npm http GET https://registry.npmjs.org/declare.js/-/declare.js-0.0.4.tgz npm http 200 https://registry.npmjs.org/string-extended npm http 200 https://registry.npmjs.org/is-extended npm http GET https://registry.npmjs.org/string-extended/-/string-extended-0.0.5.tgz npm http GET https://registry.npmjs.org/is-extended/-/is-extended-0.0.8.tgz npm http 200 https://registry.npmjs.org/grunt npm http GET https://registry.npmjs.org/grunt/-/grunt-0.4.1.tgz npm http 200 https://registry.npmjs.org/function-extended npm http GET https://registry.npmjs.org/function-extended/-/function-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/array-extended npm http GET https://registry.npmjs.org/array-extended/-/array-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/date-extended npm http GET https://registry.npmjs.org/date-extended/-/date-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/object-extended npm http GET https://registry.npmjs.org/object-extended/-/object-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/promise-extended npm http GET https://registry.npmjs.org/promise-extended/-/promise-extended-0.0.6.tgz npm http 200 https://registry.npmjs.org/leafy npm http 200 https://registry.npmjs.org/ht npm http GET https://registry.npmjs.org/leafy/-/leafy-0.0.2.tgz npm http GET https://registry.npmjs.org/ht/-/ht-0.0.2.tgz npm http 200 https://registry.npmjs.org/commander npm http GET https://registry.npmjs.org/commander/-/commander-1.1.1.tgz npm http 200 https://registry.npmjs.org/it npm http GET https://registry.npmjs.org/it/-/it-0.2.6.tgz npm http 200 https://registry.npmjs.org/jison npm http GET https://registry.npmjs.org/jison/-/jison-0.4.4.tgz npm http 200 https://registry.npmjs.org/grunt-it npm http GET https://registry.npmjs.org/grunt-it/-/grunt-it-0.3.1.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-uglify npm http GET https://registry.npmjs.org/grunt-contrib-uglify/-/grunt-contrib-uglify-0.2.1.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.5.4.tgz npm http 200 https://registry.npmjs.org/grunt-browserify npm http GET https://registry.npmjs.org/grunt-browserify/-/grunt-browserify-1.0.2.tgz npm http 200 https://registry.npmjs.org/extended/-/extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/declare.js/-/declare.js-0.0.4.tgz npm http 200 https://registry.npmjs.org/browserify npm http 200 https://registry.npmjs.org/is-extended/-/is-extended-0.0.8.tgz npm http 200 https://registry.npmjs.org/string-extended/-/string-extended-0.0.5.tgz npm http GET https://registry.npmjs.org/browserify/-/browserify-2.14.2.tgz npm http 200 https://registry.npmjs.org/grunt/-/grunt-0.4.1.tgz npm http 200 https://registry.npmjs.org/array-extended/-/array-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/object-extended/-/object-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/date-extended/-/date-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/function-extended/-/function-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/promise-extended/-/promise-extended-0.0.6.tgz npm http 200 https://registry.npmjs.org/jison/-/jison-0.4.4.tgz npm http 200 https://registry.npmjs.org/it/-/it-0.2.6.tgz npm http 200 https://registry.npmjs.org/commander/-/commander-1.1.1.tgz npm http 200 https://registry.npmjs.org/leafy/-/leafy-0.0.2.tgz npm http 200 https://registry.npmjs.org/ht/-/ht-0.0.2.tgz npm http 200 https://registry.npmjs.org/grunt-browserify/-/grunt-browserify-1.0.2.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-uglify/-/grunt-contrib-uglify-0.2.1.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.5.4.tgz npm http 200 https://registry.npmjs.org/grunt-it/-/grunt-it-0.3.1.tgz npm http 200 https://registry.npmjs.org/browserify/-/browserify-2.14.2.tgz npm http GET https://registry.npmjs.org/keypress npm http GET https://registry.npmjs.org/array-extended/0.0.4 npm http GET https://registry.npmjs.org/jshint npm http GET https://registry.npmjs.org/JSONSelect/0.4.0 npm http GET https://registry.npmjs.org/esprima npm http GET https://registry.npmjs.org/extender npm http GET https://registry.npmjs.org/uglify-js npm http GET https://registry.npmjs.org/grunt-lib-contrib npm http GET https://registry.npmjs.org/browserify-shim npm http GET https://registry.npmjs.org/async npm http GET https://registry.npmjs.org/coffee-script npm http GET https://registry.npmjs.org/escodegen/0.0.21 npm http GET https://registry.npmjs.org/colors npm http GET https://registry.npmjs.org/jison-lex npm http GET https://registry.npmjs.org/dateformat/1.0.2-1.2.3 npm http GET https://registry.npmjs.org/ebnf-parser npm http GET https://registry.npmjs.org/eventemitter2 npm http GET https://registry.npmjs.org/lex-parser npm http GET https://registry.npmjs.org/findup-sync npm http GET https://registry.npmjs.org/nomnom/1.5.2 npm http GET https://registry.npmjs.org/glob npm http GET https://registry.npmjs.org/hooker npm http GET https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/browserify npm http GET https://registry.npmjs.org/iconv-lite npm http GET https://registry.npmjs.org/minimatch npm http GET https://registry.npmjs.org/nopt npm http GET https://registry.npmjs.org/rimraf npm http GET https://registry.npmjs.org/lodash npm http GET https://registry.npmjs.org/underscore.string npm http GET https://registry.npmjs.org/which npm http GET https://registry.npmjs.org/js-yaml npm http GET https://registry.npmjs.org/module-deps npm http GET https://registry.npmjs.org/browser-pack npm http GET https://registry.npmjs.org/shell-quote npm http GET https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/duplexer npm http GET https://registry.npmjs.org/concat-stream npm http GET https://registry.npmjs.org/insert-module-globals npm http GET https://registry.npmjs.org/syntax-error npm http GET https://registry.npmjs.org/browser-resolve npm http GET https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/optimist npm http GET https://registry.npmjs.org/JSONStream npm http GET https://registry.npmjs.org/umd npm http 200 https://registry.npmjs.org/JSONSelect/0.4.0 npm http GET https://registry.npmjs.org/JSONSelect/-/JSONSelect-0.4.0.tgz npm http 200 https://registry.npmjs.org/keypress npm http GET https://registry.npmjs.org/keypress/-/keypress-0.1.0.tgz npm http 200 https://registry.npmjs.org/array-extended/0.0.4 npm http GET https://registry.npmjs.org/array-extended/-/array-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/esprima npm http GET https://registry.npmjs.org/esprima/-/esprima-1.0.3.tgz npm http 200 https://registry.npmjs.org/jshint npm http GET https://registry.npmjs.org/jshint/-/jshint-2.0.1.tgz npm http 200 https://registry.npmjs.org/grunt-lib-contrib npm http GET https://registry.npmjs.org/grunt-lib-contrib/-/grunt-lib-contrib-0.6.1.tgz npm http 200 https://registry.npmjs.org/extender npm http GET https://registry.npmjs.org/extender/-/extender-0.0.7.tgz npm http 200 https://registry.npmjs.org/browserify-shim npm http GET https://registry.npmjs.org/browserify-shim/-/browserify-shim-2.0.3.tgz npm http 200 https://registry.npmjs.org/uglify-js npm http GET https://registry.npmjs.org/uglify-js/-/uglify-js-2.3.6.tgz npm http 200 https://registry.npmjs.org/escodegen/0.0.21 npm http GET https://registry.npmjs.org/escodegen/-/escodegen-0.0.21.tgz npm http 200 https://registry.npmjs.org/colors npm http GET https://registry.npmjs.org/colors/-/colors-0.6.0-1.tgz npm http 200 https://registry.npmjs.org/coffee-script npm http GET https://registry.npmjs.org/coffee-script/-/coffee-script-1.3.3.tgz npm http 200 https://registry.npmjs.org/async npm http GET https://registry.npmjs.org/async/-/async-0.1.22.tgz npm http 200 https://registry.npmjs.org/jison-lex npm http GET https://registry.npmjs.org/jison-lex/-/jison-lex-0.2.0.tgz npm http 200 https://registry.npmjs.org/dateformat/1.0.2-1.2.3 npm http GET https://registry.npmjs.org/dateformat/-/dateformat-1.0.2-1.2.3.tgz npm http 200 https://registry.npmjs.org/ebnf-parser npm http GET https://registry.npmjs.org/ebnf-parser/-/ebnf-parser-0.1.1.tgz npm http 200 https://registry.npmjs.org/lex-parser npm http GET https://registry.npmjs.org/lex-parser/-/lex-parser-0.1.0.tgz npm http 200 https://registry.npmjs.org/eventemitter2 npm http GET https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.11.tgz npm http 200 https://registry.npmjs.org/findup-sync npm http GET https://registry.npmjs.org/findup-sync/-/findup-sync-0.1.2.tgz npm http 200 https://registry.npmjs.org/nomnom/1.5.2 npm http GET https://registry.npmjs.org/nomnom/-/nomnom-1.5.2.tgz npm http 304 https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.4.3.tgz npm http 200 https://registry.npmjs.org/hooker npm http GET https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz npm http 200 https://registry.npmjs.org/glob npm http GET https://registry.npmjs.org/glob/-/glob-3.1.21.tgz npm http 304 https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.3.0.tgz npm http 304 https://registry.npmjs.org/browserify npm http GET https://registry.npmjs.org/browserify/-/browserify-2.12.5.tgz npm http 200 https://registry.npmjs.org/iconv-lite npm http GET https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.2.9.tgz npm http 200 https://registry.npmjs.org/nopt npm http GET https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz npm http 200 https://registry.npmjs.org/minimatch npm http GET https://registry.npmjs.org/minimatch/-/minimatch-0.2.12.tgz npm http 200 https://registry.npmjs.org/rimraf npm http GET https://registry.npmjs.org/rimraf/-/rimraf-2.0.3.tgz npm http 200 https://registry.npmjs.org/underscore.string npm http GET https://registry.npmjs.org/underscore.string/-/underscore.string-2.2.0rc.tgz npm http 200 https://registry.npmjs.org/which npm http GET https://registry.npmjs.org/which/-/which-1.0.5.tgz npm http 200 https://registry.npmjs.org/js-yaml npm http GET https://registry.npmjs.org/js-yaml/-/js-yaml-2.0.5.tgz npm http 200 https://registry.npmjs.org/module-deps npm http 200 https://registry.npmjs.org/browser-pack npm http GET https://registry.npmjs.org/module-deps/-/module-deps-0.8.0.tgz npm http GET https://registry.npmjs.org/browser-pack/-/browser-pack-0.8.1.tgz npm http 200 https://registry.npmjs.org/lodash npm http GET https://registry.npmjs.org/lodash/-/lodash-0.9.2.tgz npm http 200 https://registry.npmjs.org/shell-quote npm http GET https://registry.npmjs.org/shell-quote/-/shell-quote-0.0.1.tgz npm http 200 https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/through/-/through-2.2.7.tgz npm http 200 https://registry.npmjs.org/duplexer npm http GET https://registry.npmjs.org/duplexer/-/duplexer-0.0.4.tgz npm http 200 https://registry.npmjs.org/concat-stream npm http GET https://registry.npmjs.org/concat-stream/-/concat-stream-0.1.1.tgz npm http 200 https://registry.npmjs.org/syntax-error npm http GET https://registry.npmjs.org/syntax-error/-/syntax-error-0.0.1.tgz npm http 200 https://registry.npmjs.org/insert-module-globals npm http GET https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-0.2.1.tgz npm http 200 https://registry.npmjs.org/browser-resolve npm http GET https://registry.npmjs.org/browser-resolve/-/browser-resolve-0.1.1.tgz npm http 200 https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/inherits/-/inherits-1.0.0.tgz npm http 200 https://registry.npmjs.org/optimist npm http GET https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz npm http 200 https://registry.npmjs.org/JSONSelect/-/JSONSelect-0.4.0.tgz npm http 200 https://registry.npmjs.org/umd npm http GET https://registry.npmjs.org/umd/-/umd-1.1.1.tgz npm http 200 https://registry.npmjs.org/JSONStream npm http GET https://registry.npmjs.org/JSONStream/-/JSONStream-0.4.4.tgz npm http 200 https://registry.npmjs.org/keypress/-/keypress-0.1.0.tgz npm http 200 https://registry.npmjs.org/array-extended/-/array-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/esprima/-/esprima-1.0.3.tgz npm http 200 https://registry.npmjs.org/jshint/-/jshint-2.0.1.tgz npm http 200 https://registry.npmjs.org/extender/-/extender-0.0.7.tgz npm http 200 https://registry.npmjs.org/grunt-lib-contrib/-/grunt-lib-contrib-0.6.1.tgz npm http 200 https://registry.npmjs.org/browserify-shim/-/browserify-shim-2.0.3.tgz npm http 200 https://registry.npmjs.org/uglify-js/-/uglify-js-2.3.6.tgz npm http 200 https://registry.npmjs.org/escodegen/-/escodegen-0.0.21.tgz npm http 200 https://registry.npmjs.org/colors/-/colors-0.6.0-1.tgz npm http 200 https://registry.npmjs.org/coffee-script/-/coffee-script-1.3.3.tgz npm http 200 https://registry.npmjs.org/jison-lex/-/jison-lex-0.2.0.tgz npm http 200 https://registry.npmjs.org/dateformat/-/dateformat-1.0.2-1.2.3.tgz npm http 200 https://registry.npmjs.org/async/-/async-0.1.22.tgz npm http 200 https://registry.npmjs.org/ebnf-parser/-/ebnf-parser-0.1.1.tgz npm http 200 https://registry.npmjs.org/lex-parser/-/lex-parser-0.1.0.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.4.3.tgz npm http 200 https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz npm http 200 https://registry.npmjs.org/findup-sync/-/findup-sync-0.1.2.tgz npm http 200 https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.11.tgz npm http 200 https://registry.npmjs.org/nomnom/-/nomnom-1.5.2.tgz npm http 200 https://registry.npmjs.org/browserify/-/browserify-2.12.5.tgz npm http 200 https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.2.9.tgz npm http 200 https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz npm http 200 https://registry.npmjs.org/glob/-/glob-3.1.21.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.3.0.tgz npm http 200 https://registry.npmjs.org/which/-/which-1.0.5.tgz npm http 200 https://registry.npmjs.org/underscore.string/-/underscore.string-2.2.0rc.tgz npm http 200 https://registry.npmjs.org/minimatch/-/minimatch-0.2.12.tgz npm http 200 https://registry.npmjs.org/rimraf/-/rimraf-2.0.3.tgz npm http GET https://registry.npmjs.org/zlib-browserify/0.0.1 npm http GET https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/colors npm http GET https://registry.npmjs.org/jshint npm http GET https://registry.npmjs.org/async npm http GET https://registry.npmjs.org/estraverse npm http GET https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/minimatch npm http 200 https://registry.npmjs.org/js-yaml/-/js-yaml-2.0.5.tgz npm http 200 https://registry.npmjs.org/browser-pack/-/browser-pack-0.8.1.tgz npm http 200 https://registry.npmjs.org/lodash/-/lodash-0.9.2.tgz npm http 200 https://registry.npmjs.org/module-deps/-/module-deps-0.8.0.tgz npm http 200 https://registry.npmjs.org/shell-quote/-/shell-quote-0.0.1.tgz npm http 200 https://registry.npmjs.org/through/-/through-2.2.7.tgz npm http 200 https://registry.npmjs.org/concat-stream/-/concat-stream-0.1.1.tgz npm http 200 https://registry.npmjs.org/duplexer/-/duplexer-0.0.4.tgz npm http GET https://registry.npmjs.org/browser-pack npm http GET https://registry.npmjs.org/shell-quote npm http GET https://registry.npmjs.org/module-deps npm http 200 https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-0.2.1.tgz npm http 200 https://registry.npmjs.org/syntax-error/-/syntax-error-0.0.1.tgz npm http 200 https://registry.npmjs.org/browser-resolve/-/browser-resolve-0.1.1.tgz npm http 200 https://registry.npmjs.org/inherits/-/inherits-1.0.0.tgz npm http 200 https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz npm http 200 https://registry.npmjs.org/JSONStream/-/JSONStream-0.4.4.tgz npm http 200 https://registry.npmjs.org/umd/-/umd-1.1.1.tgz npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/abbrev npm http GET https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/sigmund npm http GET https://registry.npmjs.org/lodash npm http GET https://registry.npmjs.org/argparse npm http GET https://registry.npmjs.org/esprima npm http 200 https://registry.npmjs.org/zlib-browserify/0.0.1 npm http GET https://registry.npmjs.org/zlib-browserify/-/zlib-browserify-0.0.1.tgz npm http GET https://registry.npmjs.org/shelljs npm http GET https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/cli npm http GET https://registry.npmjs.org/console-browserify npm http GET https://registry.npmjs.org/minimatch npm http 304 https://registry.npmjs.org/colors npm http GET https://registry.npmjs.org/colors/-/colors-0.5.1.tgz npm http 200 https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/underscore/-/underscore-1.1.7.tgz npm http 200 https://registry.npmjs.org/source-map npm http 304 https://registry.npmjs.org/jshint npm http GET https://registry.npmjs.org/source-map/-/source-map-0.1.22.tgz npm http GET https://registry.npmjs.org/jshint/-/jshint-1.1.0.tgz npm http 304 https://registry.npmjs.org/async npm http GET https://registry.npmjs.org/async/-/async-0.2.8.tgz npm http GET https://registry.npmjs.org/rfile npm http GET https://registry.npmjs.org/ruglify npm http GET https://registry.npmjs.org/esprima npm http GET https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/uglify-js npm http GET https://registry.npmjs.org/uglify-js/1.3.4 npm http GET https://registry.npmjs.org/combine-source-map npm http GET https://registry.npmjs.org/wordwrap npm http GET https://registry.npmjs.org/resolve npm http GET https://registry.npmjs.org/commondir npm http GET https://registry.npmjs.org/lexical-scope npm http GET https://registry.npmjs.org/resolve/0.3.1 npm http GET https://registry.npmjs.org/console-browserify/0.1.6 npm http GET https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/detective npm http GET https://registry.npmjs.org/process npm http GET https://registry.npmjs.org/vm-browserify/0.0.1 npm http GET https://registry.npmjs.org/crypto-browserify/0.2.1 npm http GET https://registry.npmjs.org/http-browserify/0.1.11 npm http GET https://registry.npmjs.org/buffer-browserify/0.0.5 npm http GET https://registry.npmjs.org/jsonparse/0.0.5 npm http 200 https://registry.npmjs.org/estraverse npm http GET https://registry.npmjs.org/estraverse/-/estraverse-0.0.4.tgz npm http 304 https://registry.npmjs.org/inherits npm http 200 https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.1.tgz npm http 304 https://registry.npmjs.org/minimatch npm http 200 https://registry.npmjs.org/source-map npm http 304 https://registry.npmjs.org/browser-pack npm http 304 https://registry.npmjs.org/shell-quote npm http 304 https://registry.npmjs.org/module-deps npm http GET https://registry.npmjs.org/module-deps/-/module-deps-0.6.2.tgz npm http 200 https://registry.npmjs.org/abbrev npm http GET https://registry.npmjs.org/abbrev/-/abbrev-1.0.4.tgz npm http 200 https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.14.tgz npm http 304 https://registry.npmjs.org/lodash npm http GET https://registry.npmjs.org/lodash/-/lodash-1.0.1.tgz npm http 200 https://registry.npmjs.org/sigmund npm http GET https://registry.npmjs.org/sigmund/-/sigmund-1.0.0.tgz npm http 200 https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/lru-cache/-/lru-cache-2.3.0.tgz npm http 304 https://registry.npmjs.org/esprima npm http 200 https://registry.npmjs.org/zlib-browserify/-/zlib-browserify-0.0.1.tgz npm http 200 https://registry.npmjs.org/argparse npm http GET https://registry.npmjs.org/argparse/-/argparse-0.1.15.tgz npm http 200 https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/underscore/-/underscore-1.4.4.tgz npm http 200 https://registry.npmjs.org/shelljs npm http GET https://registry.npmjs.org/shelljs/-/shelljs-0.1.4.tgz npm http 200 https://registry.npmjs.org/console-browserify npm http 200 https://registry.npmjs.org/cli npm http GET https://registry.npmjs.org/cli/-/cli-0.4.4-2.tgz npm http 304 https://registry.npmjs.org/minimatch npm http 200 https://registry.npmjs.org/colors/-/colors-0.5.1.tgz npm http 200 https://registry.npmjs.org/underscore/-/underscore-1.1.7.tgz npm http 200 https://registry.npmjs.org/source-map/-/source-map-0.1.22.tgz npm http 200 https://registry.npmjs.org/async/-/async-0.2.8.tgz npm http 200 https://registry.npmjs.org/jshint/-/jshint-1.1.0.tgz npm http 304 https://registry.npmjs.org/esprima npm http GET https://registry.npmjs.org/esprima/-/esprima-0.9.9.tgz npm http 200 https://registry.npmjs.org/ruglify npm http 200 https://registry.npmjs.org/rfile npm http GET https://registry.npmjs.org/ruglify/-/ruglify-1.0.0.tgz npm http GET https://registry.npmjs.org/rfile/-/rfile-1.0.0.tgz npm http GET https://registry.npmjs.org/amdefine npm http 304 https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/through/-/through-2.3.4.tgz npm http 304 https://registry.npmjs.org/uglify-js npm http GET https://registry.npmjs.org/uglify-js/-/uglify-js-2.2.5.tgz npm http 200 https://registry.npmjs.org/combine-source-map npm http GET https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.1.2.tgz npm http 200 https://registry.npmjs.org/wordwrap npm http GET https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz npm http 200 https://registry.npmjs.org/commondir npm http GET https://registry.npmjs.org/commondir/-/commondir-0.0.1.tgz npm http 200 https://registry.npmjs.org/uglify-js/1.3.4 npm http GET https://registry.npmjs.org/uglify-js/-/uglify-js-1.3.4.tgz npm http 200 https://registry.npmjs.org/resolve npm http 304 https://registry.npmjs.org/through npm http 200 https://registry.npmjs.org/lexical-scope npm http GET https://registry.npmjs.org/lexical-scope/-/lexical-scope-0.0.11.tgz npm http 200 https://registry.npmjs.org/resolve/0.3.1 npm http GET https://registry.npmjs.org/resolve/-/resolve-0.3.1.tgz npm http 200 https://registry.npmjs.org/console-browserify/0.1.6 npm http GET https://registry.npmjs.org/console-browserify/-/console-browserify-0.1.6.tgz npm http 200 https://registry.npmjs.org/process npm http GET https://registry.npmjs.org/process/-/process-0.5.1.tgz npm http 200 https://registry.npmjs.org/vm-browserify/0.0.1 npm http GET https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.1.tgz npm http 200 https://registry.npmjs.org/detective npm http GET https://registry.npmjs.org/detective/-/detective-2.1.2.tgz npm http 200 https://registry.npmjs.org/crypto-browserify/0.2.1 npm http GET https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-0.2.1.tgz npm http 200 https://registry.npmjs.org/estraverse/-/estraverse-0.0.4.tgz npm http 200 https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.1.tgz npm http 200 https://registry.npmjs.org/buffer-browserify/0.0.5 npm http GET https://registry.npmjs.org/buffer-browserify/-/buffer-browserify-0.0.5.tgz npm http 200 https://registry.npmjs.org/http-browserify/0.1.11 npm http GET https://registry.npmjs.org/http-browserify/-/http-browserify-0.1.11.tgz npm http 200 https://registry.npmjs.org/jsonparse/0.0.5 npm http GET https://registry.npmjs.org/jsonparse/-/jsonparse-0.0.5.tgz npm http 200 https://registry.npmjs.org/module-deps/-/module-deps-0.6.2.tgz npm http 200 https://registry.npmjs.org/abbrev/-/abbrev-1.0.4.tgz npm http 200 https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.14.tgz npm http 200 https://registry.npmjs.org/lodash/-/lodash-1.0.1.tgz npm http 200 https://registry.npmjs.org/sigmund/-/sigmund-1.0.0.tgz npm http GET https://registry.npmjs.org/zlib-browserify/0.0.1 npm http 200 https://registry.npmjs.org/lru-cache/-/lru-cache-2.3.0.tgz npm http 200 https://registry.npmjs.org/argparse/-/argparse-0.1.15.tgz npm http 200 https://registry.npmjs.org/underscore/-/underscore-1.4.4.tgz npm http 200 https://registry.npmjs.org/cli/-/cli-0.4.4-2.tgz npm http 200 https://registry.npmjs.org/shelljs/-/shelljs-0.1.4.tgz npm http 200 https://registry.npmjs.org/ruglify/-/ruglify-1.0.0.tgz npm http 200 https://registry.npmjs.org/esprima/-/esprima-0.9.9.tgz npm http 200 https://registry.npmjs.org/rfile/-/rfile-1.0.0.tgz npm http 200 https://registry.npmjs.org/through/-/through-2.3.4.tgz npm http 200 https://registry.npmjs.org/amdefine npm http GET https://registry.npmjs.org/amdefine/-/amdefine-0.0.5.tgz npm http 200 https://registry.npmjs.org/uglify-js/-/uglify-js-2.2.5.tgz npm http 200 https://registry.npmjs.org/commondir/-/commondir-0.0.1.tgz npm http 200 https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz npm http 200 https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.1.2.tgz npm http GET https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/underscore.string npm http 200 https://registry.npmjs.org/uglify-js/-/uglify-js-1.3.4.tgz npm http 200 https://registry.npmjs.org/lexical-scope/-/lexical-scope-0.0.11.tgz npm http 200 https://registry.npmjs.org/console-browserify/-/console-browserify-0.1.6.tgz npm http 200 https://registry.npmjs.org/resolve/-/resolve-0.3.1.tgz npm http 200 https://registry.npmjs.org/process/-/process-0.5.1.tgz npm http 200 https://registry.npmjs.org/detective/-/detective-2.1.2.tgz npm http 200 https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.1.tgz npm http 200 https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-0.2.1.tgz npm http 200 https://registry.npmjs.org/buffer-browserify/-/buffer-browserify-0.0.5.tgz npm http 200 https://registry.npmjs.org/http-browserify/-/http-browserify-0.1.11.tgz npm http 200 https://registry.npmjs.org/jsonparse/-/jsonparse-0.0.5.tgz npm http 304 https://registry.npmjs.org/zlib-browserify/0.0.1 npm http 200 https://registry.npmjs.org/amdefine/-/amdefine-0.0.5.tgz npm http 304 https://registry.npmjs.org/underscore npm http 304 https://registry.npmjs.org/underscore.string npm http GET https://registry.npmjs.org/underscore.string/-/underscore.string-2.3.1.tgz npm http GET https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/glob npm http GET https://registry.npmjs.org/sigmund npm http GET https://registry.npmjs.org/callsite npm http GET https://registry.npmjs.org/resolve npm http GET https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/esprima/1.0.2 npm http GET https://registry.npmjs.org/escodegen/0.0.15 npm http GET https://registry.npmjs.org/astw npm http 200 https://registry.npmjs.org/underscore.string/-/underscore.string-2.3.1.tgz npm http GET https://registry.npmjs.org/convert-source-map npm http GET https://registry.npmjs.org/parse-base64vlq-mappings npm http GET https://registry.npmjs.org/inline-source-map npm http 200 https://registry.npmjs.org/callsite npm http 304 https://registry.npmjs.org/lru-cache npm http 304 https://registry.npmjs.org/sigmund npm http 304 https://registry.npmjs.org/glob npm http GET https://registry.npmjs.org/glob/-/glob-3.2.1.tgz npm http GET https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz npm WARN prefer global jison@0.4.4 should be installed with -g npm http GET https://registry.npmjs.org/base64-js/0.0.2 npm http GET https://registry.npmjs.org/peakle npm http GET https://github.com/ariya/esprima/tarball/master npm http GET https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/shelljs npm http GET https://registry.npmjs.org/cli npm http GET https://registry.npmjs.org/minimatch npm http GET https://registry.npmjs.org/concat-stream/0.0.8 npm http 304 https://registry.npmjs.org/source-map npm http 304 https://registry.npmjs.org/resolve npm http 200 https://registry.npmjs.org/esprima/1.0.2 npm http 200 https://registry.npmjs.org/astw npm http 200 https://registry.npmjs.org/escodegen/0.0.15 npm http 200 https://github.com/ariya/esprima/tarball/master npm http GET https://registry.npmjs.org/esprima/-/esprima-1.0.2.tgz npm http GET https://registry.npmjs.org/escodegen/-/escodegen-0.0.15.tgz npm http GET https://registry.npmjs.org/astw/-/astw-0.0.0.tgz npm http 200 https://registry.npmjs.org/glob/-/glob-3.2.1.tgz npm http 200 https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz npm http GET https://registry.npmjs.org/amdefine npm http 200 https://registry.npmjs.org/convert-source-map npm http 200 https://registry.npmjs.org/parse-base64vlq-mappings npm http GET https://registry.npmjs.org/convert-source-map/-/convert-source-map-0.2.5.tgz npm http GET https://registry.npmjs.org/parse-base64vlq-mappings/-/parse-base64vlq-mappings-0.1.3.tgz npm http 200 https://registry.npmjs.org/inline-source-map npm http GET https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.2.3.tgz npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/inherits npm http 200 https://registry.npmjs.org/base64-js/0.0.2 npm http GET https://registry.npmjs.org/base64-js/-/base64-js-0.0.2.tgz npm http 304 https://registry.npmjs.org/underscore npm http 304 https://registry.npmjs.org/shelljs npm http 200 https://registry.npmjs.org/peakle npm http GET https://registry.npmjs.org/peakle/-/peakle-0.0.1.tgz npm http 304 https://registry.npmjs.org/cli npm http 200 https://registry.npmjs.org/esprima/-/esprima-1.0.2.tgz npm http 304 https://registry.npmjs.org/minimatch npm http 200 https://registry.npmjs.org/escodegen/-/escodegen-0.0.15.tgz npm http 200 https://registry.npmjs.org/astw/-/astw-0.0.0.tgz npm http 200 https://registry.npmjs.org/concat-stream/0.0.8 npm http GET https://registry.npmjs.org/concat-stream/-/concat-stream-0.0.8.tgz npm http 200 https://registry.npmjs.org/convert-source-map/-/convert-source-map-0.2.5.tgz npm http 304 https://registry.npmjs.org/amdefine npm http 200 https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.2.3.tgz npm http 200 https://registry.npmjs.org/parse-base64vlq-mappings/-/parse-base64vlq-mappings-0.1.3.tgz npm http 304 https://registry.npmjs.org/graceful-fs npm http 200 https://registry.npmjs.org/peakle/-/peakle-0.0.1.tgz npm http 200 https://registry.npmjs.org/concat-stream/-/concat-stream-0.0.8.tgz npm http 304 https://registry.npmjs.org/inherits npm http 200 https://registry.npmjs.org/base64-js/-/base64-js-0.0.2.tgz npm http GET https://registry.npmjs.org/source-map npm http 304 https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/sigmund npm http GET https://registry.npmjs.org/glob npm http GET https://registry.npmjs.org/amdefine npm http GET https://registry.npmjs.org/source-map npm http 304 https://registry.npmjs.org/sigmund npm http 304 https://registry.npmjs.org/glob npm http 304 https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/inherits npm http 304 https://registry.npmjs.org/amdefine npm http 304 https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/amdefine npm http 304 https://registry.npmjs.org/graceful-fs npm http 304 https://registry.npmjs.org/inherits npm http 304 https://registry.npmjs.org/amdefine function-extended@0.0.4 node_modules/function-extended is-extended@0.0.8 node_modules/is-extended ht@0.0.2 node_modules/ht string-extended@0.0.5 node_modules/string-extended declare.js@0.0.4 node_modules/declare.js leafy@0.0.2 node_modules/leafy grunt-it@0.3.1 node_modules/grunt-it commander@1.1.1 node_modules/commander └── keypress@0.1.0 object-extended@0.0.5 node_modules/object-extended └── array-extended@0.0.4 extended@0.0.4 node_modules/extended └── extender@0.0.7 it@0.2.6 node_modules/it └── glob@3.1.21 (inherits@1.0.0, graceful-fs@1.2.1, minimatch@0.2.12) grunt-contrib-uglify@0.2.1 node_modules/grunt-contrib-uglify ├── grunt-lib-contrib@0.6.1 (zlib-browserify@0.0.1) └── uglify-js@2.3.6 (async@0.2.8, optimist@0.3.7, source-map@0.1.22) jison@0.4.4 node_modules/jison ├── lex-parser@0.1.0 ├── ebnf-parser@0.1.1 ├── jison-lex@0.2.0 ├── esprima@1.0.3 ├── JSONSelect@0.4.0 ├── nomnom@1.5.2 (colors@0.5.1, underscore@1.1.7) └── escodegen@0.0.21 (estraverse@0.0.4, source-map@0.1.22) grunt@0.4.1 node_modules/grunt ├── dateformat@1.0.2-1.2.3 ├── colors@0.6.0-1 ├── hooker@0.2.3 ├── async@0.1.22 ├── eventemitter2@0.4.11 ├── which@1.0.5 ├── underscore.string@2.2.0rc ├── coffee-script@1.3.3 ├── iconv-lite@0.2.9 ├── lodash@0.9.2 ├── glob@3.1.21 (inherits@1.0.0, graceful-fs@1.2.1) ├── nopt@1.0.10 (abbrev@1.0.4) ├── rimraf@2.0.3 (graceful-fs@1.1.14) ├── minimatch@0.2.12 (sigmund@1.0.0, lru-cache@2.3.0) ├── findup-sync@0.1.2 (lodash@1.0.1) └── js-yaml@2.0.5 (esprima@1.0.3, argparse@0.1.15) grunt-contrib-jshint@0.5.4 node_modules/grunt-contrib-jshint └── jshint@2.0.1 (console-browserify@0.1.6, underscore@1.4.4, shelljs@0.1.4, minimatch@0.2.12, cli@0.4.4-2) date-extended@0.0.4 node_modules/date-extended └── grunt-contrib-jshint@0.4.3 (jshint@1.1.0) array-extended@0.0.5 node_modules/array-extended └── grunt-contrib-jshint@0.4.3 (jshint@1.1.0) promise-extended@0.0.6 node_modules/promise-extended └── grunt-contrib-jshint@0.3.0 (jshint@1.1.0) browserify@2.14.2 node_modules/browserify ├── inherits@1.0.0 ├── concat-stream@0.1.1 ├── shell-quote@0.0.1 ├── duplexer@0.0.4 ├── through@2.2.7 ├── optimist@0.3.7 (wordwrap@0.0.2) ├── JSONStream@0.4.4 (jsonparse@0.0.5) ├── umd@1.1.1 (through@2.3.4, ruglify@1.0.0, rfile@1.0.0, uglify-js@2.2.5) ├── browser-resolve@0.1.1 (console-browserify@0.1.6, zlib-browserify@0.0.1, vm-browserify@0.0.1, crypto-browserify@0.2.1, resolve@0.3.1, http-browserify@0.1.11, buffer-browserify@0.0.5) ├── syntax-error@0.0.1 (esprima@0.9.9) ├── insert-module-globals@0.2.1 (process@0.5.1, commondir@0.0.1, lexical-scope@0.0.11) ├── browser-pack@0.8.1 (uglify-js@1.3.4, combine-source-map@0.1.2) └── module-deps@0.8.0 (through@2.3.4, resolve@0.3.1, detective@2.1.2) grunt-browserify@1.0.2 node_modules/grunt-browserify ├── browserify-shim@2.0.3 (through@2.2.7) └── browserify@2.12.5 (inherits@1.0.0, concat-stream@0.1.1, shell-quote@0.0.1, duplexer@0.0.4, through@2.2.7, optimist@0.3.7, JSONStream@0.4.4, umd@1.1.1, browser-resolve@0.1.1, syntax-error@0.0.1, insert-module-globals@0.2.1, browser-pack@0.8.1, module-deps@0.6.2)
timeout waiting to hear back from safari/6.0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
✓8.0
✓9.0
✓10.0
✓20.0
✓21.0
✓22.0
✓23.0
✓24.0
✓25.0
✓14.0
✓15.0
✓16.0
✓17.0
✓18.0
✓19.0
6.0
6.0
6.0
npm http GET https://registry.npmjs.org/grunt npm http GET https://registry.npmjs.org/declare.js npm http GET https://registry.npmjs.org/extended npm http GET https://registry.npmjs.org/array-extended npm http GET https://registry.npmjs.org/date-extended npm http GET https://registry.npmjs.org/function-extended npm http GET https://registry.npmjs.org/object-extended npm http GET https://registry.npmjs.org/promise-extended npm http GET https://registry.npmjs.org/leafy npm http GET https://registry.npmjs.org/ht npm http GET https://registry.npmjs.org/is-extended npm http GET https://registry.npmjs.org/string-extended npm http GET https://registry.npmjs.org/commander npm http GET https://registry.npmjs.org/it npm http GET https://registry.npmjs.org/jison npm http GET https://registry.npmjs.org/grunt-it npm http GET https://registry.npmjs.org/grunt-contrib-uglify npm http GET https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/grunt-browserify npm http GET https://registry.npmjs.org/browserify npm http 200 https://registry.npmjs.org/date-extended npm http GET https://registry.npmjs.org/date-extended/-/date-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/array-extended npm http 200 https://registry.npmjs.org/extended npm http 200 https://registry.npmjs.org/declare.js npm http GET https://registry.npmjs.org/array-extended/-/array-extended-0.0.5.tgz npm http GET https://registry.npmjs.org/extended/-/extended-0.0.4.tgz npm http GET https://registry.npmjs.org/declare.js/-/declare.js-0.0.4.tgz npm http 200 https://registry.npmjs.org/grunt npm http GET https://registry.npmjs.org/grunt/-/grunt-0.4.1.tgz npm http 200 https://registry.npmjs.org/function-extended npm http GET https://registry.npmjs.org/function-extended/-/function-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/leafy npm http GET https://registry.npmjs.org/leafy/-/leafy-0.0.2.tgz npm http 200 https://registry.npmjs.org/object-extended npm http GET https://registry.npmjs.org/object-extended/-/object-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/ht npm http GET https://registry.npmjs.org/ht/-/ht-0.0.2.tgz npm http 200 https://registry.npmjs.org/promise-extended npm http GET https://registry.npmjs.org/promise-extended/-/promise-extended-0.0.6.tgz npm http 200 https://registry.npmjs.org/string-extended npm http GET https://registry.npmjs.org/string-extended/-/string-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/commander npm http GET https://registry.npmjs.org/commander/-/commander-1.1.1.tgz npm http 200 https://registry.npmjs.org/is-extended npm http GET https://registry.npmjs.org/is-extended/-/is-extended-0.0.8.tgz npm http 200 https://registry.npmjs.org/it npm http GET https://registry.npmjs.org/it/-/it-0.2.6.tgz npm http 200 https://registry.npmjs.org/grunt-it npm http GET https://registry.npmjs.org/grunt-it/-/grunt-it-0.3.1.tgz npm http 200 https://registry.npmjs.org/jison npm http GET https://registry.npmjs.org/jison/-/jison-0.4.4.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-uglify npm http GET https://registry.npmjs.org/grunt-contrib-uglify/-/grunt-contrib-uglify-0.2.1.tgz npm http 200 https://registry.npmjs.org/grunt-browserify npm http GET https://registry.npmjs.org/grunt-browserify/-/grunt-browserify-1.0.2.tgz npm http 200 https://registry.npmjs.org/date-extended/-/date-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.5.4.tgz npm http 200 https://registry.npmjs.org/array-extended/-/array-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/extended/-/extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/declare.js/-/declare.js-0.0.4.tgz npm http 200 https://registry.npmjs.org/grunt/-/grunt-0.4.1.tgz npm http 200 https://registry.npmjs.org/function-extended/-/function-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/leafy/-/leafy-0.0.2.tgz npm http 200 https://registry.npmjs.org/ht/-/ht-0.0.2.tgz npm http 200 https://registry.npmjs.org/object-extended/-/object-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/promise-extended/-/promise-extended-0.0.6.tgz npm http 200 https://registry.npmjs.org/it/-/it-0.2.6.tgz npm http 200 https://registry.npmjs.org/commander/-/commander-1.1.1.tgz npm http 200 https://registry.npmjs.org/is-extended/-/is-extended-0.0.8.tgz npm http 200 https://registry.npmjs.org/string-extended/-/string-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-uglify/-/grunt-contrib-uglify-0.2.1.tgz npm http 200 https://registry.npmjs.org/grunt-it/-/grunt-it-0.3.1.tgz npm http 200 https://registry.npmjs.org/jison/-/jison-0.4.4.tgz npm http 200 https://registry.npmjs.org/browserify npm http GET https://registry.npmjs.org/browserify/-/browserify-2.14.2.tgz npm http 200 https://registry.npmjs.org/grunt-browserify/-/grunt-browserify-1.0.2.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.5.4.tgz npm http 200 https://registry.npmjs.org/browserify/-/browserify-2.14.2.tgz npm http GET https://registry.npmjs.org/keypress npm http GET https://registry.npmjs.org/array-extended/0.0.4 npm http GET https://registry.npmjs.org/jshint npm http GET https://registry.npmjs.org/JSONSelect/0.4.0 npm http GET https://registry.npmjs.org/esprima npm http GET https://registry.npmjs.org/extender npm http GET https://registry.npmjs.org/uglify-js npm http GET https://registry.npmjs.org/grunt-lib-contrib npm http GET https://registry.npmjs.org/browserify-shim npm http GET https://registry.npmjs.org/async npm http GET https://registry.npmjs.org/coffee-script npm http GET https://registry.npmjs.org/escodegen/0.0.21 npm http GET https://registry.npmjs.org/colors npm http GET https://registry.npmjs.org/jison-lex npm http GET https://registry.npmjs.org/dateformat/1.0.2-1.2.3 npm http GET https://registry.npmjs.org/ebnf-parser npm http GET https://registry.npmjs.org/eventemitter2 npm http GET https://registry.npmjs.org/lex-parser npm http GET https://registry.npmjs.org/findup-sync npm http GET https://registry.npmjs.org/nomnom/1.5.2 npm http GET https://registry.npmjs.org/glob npm http GET https://registry.npmjs.org/hooker npm http GET https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/browserify npm http GET https://registry.npmjs.org/iconv-lite npm http GET https://registry.npmjs.org/minimatch npm http GET https://registry.npmjs.org/nopt npm http GET https://registry.npmjs.org/rimraf npm http GET https://registry.npmjs.org/lodash npm http GET https://registry.npmjs.org/underscore.string npm http GET https://registry.npmjs.org/which npm http GET https://registry.npmjs.org/js-yaml npm http GET https://registry.npmjs.org/module-deps npm http GET https://registry.npmjs.org/browser-pack npm http GET https://registry.npmjs.org/shell-quote npm http GET https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/duplexer npm http GET https://registry.npmjs.org/concat-stream npm http GET https://registry.npmjs.org/insert-module-globals npm http GET https://registry.npmjs.org/syntax-error npm http GET https://registry.npmjs.org/browser-resolve npm http GET https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/optimist npm http GET https://registry.npmjs.org/JSONStream npm http GET https://registry.npmjs.org/umd npm http 200 https://registry.npmjs.org/keypress npm http GET https://registry.npmjs.org/keypress/-/keypress-0.1.0.tgz npm http 200 https://registry.npmjs.org/jshint npm http 200 https://registry.npmjs.org/JSONSelect/0.4.0 npm http GET https://registry.npmjs.org/jshint/-/jshint-2.0.1.tgz npm http GET https://registry.npmjs.org/JSONSelect/-/JSONSelect-0.4.0.tgz npm http 200 https://registry.npmjs.org/array-extended/0.0.4 npm http GET https://registry.npmjs.org/array-extended/-/array-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/esprima npm http GET https://registry.npmjs.org/esprima/-/esprima-1.0.3.tgz npm http 200 https://registry.npmjs.org/extender npm http GET https://registry.npmjs.org/extender/-/extender-0.0.7.tgz npm http 200 https://registry.npmjs.org/grunt-lib-contrib npm http GET https://registry.npmjs.org/grunt-lib-contrib/-/grunt-lib-contrib-0.6.1.tgz npm http 200 https://registry.npmjs.org/browserify-shim npm http 200 https://registry.npmjs.org/uglify-js npm http 200 https://registry.npmjs.org/coffee-script npm http GET https://registry.npmjs.org/browserify-shim/-/browserify-shim-2.0.3.tgz npm http GET https://registry.npmjs.org/uglify-js/-/uglify-js-2.3.6.tgz npm http GET https://registry.npmjs.org/coffee-script/-/coffee-script-1.3.3.tgz npm http 200 https://registry.npmjs.org/escodegen/0.0.21 npm http GET https://registry.npmjs.org/escodegen/-/escodegen-0.0.21.tgz npm http 200 https://registry.npmjs.org/dateformat/1.0.2-1.2.3 npm http GET https://registry.npmjs.org/dateformat/-/dateformat-1.0.2-1.2.3.tgz npm http 200 https://registry.npmjs.org/colors npm http GET https://registry.npmjs.org/colors/-/colors-0.6.0-1.tgz npm http 200 https://registry.npmjs.org/jison-lex npm http 200 https://registry.npmjs.org/async npm http 200 https://registry.npmjs.org/ebnf-parser npm http GET https://registry.npmjs.org/jison-lex/-/jison-lex-0.2.0.tgz npm http GET https://registry.npmjs.org/async/-/async-0.1.22.tgz npm http GET https://registry.npmjs.org/ebnf-parser/-/ebnf-parser-0.1.1.tgz npm http 200 https://registry.npmjs.org/eventemitter2 npm http GET https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.11.tgz npm http 200 https://registry.npmjs.org/lex-parser npm http GET https://registry.npmjs.org/lex-parser/-/lex-parser-0.1.0.tgz npm http 200 https://registry.npmjs.org/findup-sync npm http GET https://registry.npmjs.org/findup-sync/-/findup-sync-0.1.2.tgz npm http 200 https://registry.npmjs.org/nomnom/1.5.2 npm http GET https://registry.npmjs.org/nomnom/-/nomnom-1.5.2.tgz npm http 304 https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.4.3.tgz npm http 200 https://registry.npmjs.org/hooker npm http GET https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz npm http 304 https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.3.0.tgz npm http 304 https://registry.npmjs.org/browserify npm http 200 https://registry.npmjs.org/glob npm http GET https://registry.npmjs.org/browserify/-/browserify-2.12.5.tgz npm http GET https://registry.npmjs.org/glob/-/glob-3.1.21.tgz npm http 200 https://registry.npmjs.org/iconv-lite npm http GET https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.2.9.tgz npm http 200 https://registry.npmjs.org/nopt npm http GET https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz npm http 200 https://registry.npmjs.org/rimraf npm http GET https://registry.npmjs.org/rimraf/-/rimraf-2.0.3.tgz npm http 200 https://registry.npmjs.org/minimatch npm http GET https://registry.npmjs.org/minimatch/-/minimatch-0.2.12.tgz npm http 200 https://registry.npmjs.org/which npm http GET https://registry.npmjs.org/which/-/which-1.0.5.tgz npm http 200 https://registry.npmjs.org/underscore.string npm http GET https://registry.npmjs.org/underscore.string/-/underscore.string-2.2.0rc.tgz npm http 200 https://registry.npmjs.org/js-yaml npm http GET https://registry.npmjs.org/js-yaml/-/js-yaml-2.0.5.tgz npm http 200 https://registry.npmjs.org/lodash npm http GET https://registry.npmjs.org/lodash/-/lodash-0.9.2.tgz npm http 200 https://registry.npmjs.org/browser-pack npm http GET https://registry.npmjs.org/browser-pack/-/browser-pack-0.8.1.tgz npm http 200 https://registry.npmjs.org/shell-quote npm http GET https://registry.npmjs.org/shell-quote/-/shell-quote-0.0.1.tgz npm http 200 https://registry.npmjs.org/module-deps npm http GET https://registry.npmjs.org/module-deps/-/module-deps-0.8.0.tgz npm http 200 https://registry.npmjs.org/duplexer npm http 200 https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/duplexer/-/duplexer-0.0.4.tgz npm http GET https://registry.npmjs.org/through/-/through-2.2.7.tgz npm http 200 https://registry.npmjs.org/concat-stream npm http GET https://registry.npmjs.org/concat-stream/-/concat-stream-0.1.1.tgz npm http 200 https://registry.npmjs.org/syntax-error npm http GET https://registry.npmjs.org/syntax-error/-/syntax-error-0.0.1.tgz npm http 200 https://registry.npmjs.org/insert-module-globals npm http GET https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-0.2.1.tgz npm http 200 https://registry.npmjs.org/browser-resolve npm http GET https://registry.npmjs.org/browser-resolve/-/browser-resolve-0.1.1.tgz npm http 200 https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/inherits/-/inherits-1.0.0.tgz npm http 200 https://registry.npmjs.org/umd npm http GET https://registry.npmjs.org/umd/-/umd-1.1.1.tgz npm http 200 https://registry.npmjs.org/optimist npm http GET https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz npm http 200 https://registry.npmjs.org/keypress/-/keypress-0.1.0.tgz npm http 200 https://registry.npmjs.org/jshint/-/jshint-2.0.1.tgz npm http 200 https://registry.npmjs.org/JSONSelect/-/JSONSelect-0.4.0.tgz npm http 200 https://registry.npmjs.org/JSONStream npm http GET https://registry.npmjs.org/JSONStream/-/JSONStream-0.4.4.tgz npm http 200 https://registry.npmjs.org/array-extended/-/array-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/esprima/-/esprima-1.0.3.tgz npm http 200 https://registry.npmjs.org/extender/-/extender-0.0.7.tgz npm http 200 https://registry.npmjs.org/grunt-lib-contrib/-/grunt-lib-contrib-0.6.1.tgz npm http 200 https://registry.npmjs.org/browserify-shim/-/browserify-shim-2.0.3.tgz npm http 200 https://registry.npmjs.org/uglify-js/-/uglify-js-2.3.6.tgz npm http 200 https://registry.npmjs.org/coffee-script/-/coffee-script-1.3.3.tgz npm http 200 https://registry.npmjs.org/dateformat/-/dateformat-1.0.2-1.2.3.tgz npm http 200 https://registry.npmjs.org/escodegen/-/escodegen-0.0.21.tgz npm http 200 https://registry.npmjs.org/jison-lex/-/jison-lex-0.2.0.tgz npm http 200 https://registry.npmjs.org/colors/-/colors-0.6.0-1.tgz npm http 200 https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.11.tgz npm http 200 https://registry.npmjs.org/async/-/async-0.1.22.tgz npm http 200 https://registry.npmjs.org/ebnf-parser/-/ebnf-parser-0.1.1.tgz npm http 200 https://registry.npmjs.org/lex-parser/-/lex-parser-0.1.0.tgz npm http 200 https://registry.npmjs.org/findup-sync/-/findup-sync-0.1.2.tgz npm http 200 https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.4.3.tgz npm http 200 https://registry.npmjs.org/nomnom/-/nomnom-1.5.2.tgz npm http 200 https://registry.npmjs.org/browserify/-/browserify-2.12.5.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.3.0.tgz npm http 200 https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz npm http 200 https://registry.npmjs.org/glob/-/glob-3.1.21.tgz npm http 200 https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.2.9.tgz npm http 200 https://registry.npmjs.org/which/-/which-1.0.5.tgz npm http 200 https://registry.npmjs.org/minimatch/-/minimatch-0.2.12.tgz npm http 200 https://registry.npmjs.org/rimraf/-/rimraf-2.0.3.tgz npm http 200 https://registry.npmjs.org/underscore.string/-/underscore.string-2.2.0rc.tgz npm http 200 https://registry.npmjs.org/shell-quote/-/shell-quote-0.0.1.tgz npm http 200 https://registry.npmjs.org/module-deps/-/module-deps-0.8.0.tgz npm http 200 https://registry.npmjs.org/browser-pack/-/browser-pack-0.8.1.tgz npm http 200 https://registry.npmjs.org/lodash/-/lodash-0.9.2.tgz npm http 200 https://registry.npmjs.org/js-yaml/-/js-yaml-2.0.5.tgz npm http 200 https://registry.npmjs.org/concat-stream/-/concat-stream-0.1.1.tgz npm http 200 https://registry.npmjs.org/duplexer/-/duplexer-0.0.4.tgz npm http 200 https://registry.npmjs.org/through/-/through-2.2.7.tgz npm http 200 https://registry.npmjs.org/syntax-error/-/syntax-error-0.0.1.tgz npm http GET https://registry.npmjs.org/zlib-browserify/0.0.1 npm http GET https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/estraverse npm http GET https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/colors npm http GET https://registry.npmjs.org/jshint npm http GET https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/async npm http 200 https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz npm http 200 https://registry.npmjs.org/browser-resolve/-/browser-resolve-0.1.1.tgz npm http 200 https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-0.2.1.tgz npm http 200 https://registry.npmjs.org/inherits/-/inherits-1.0.0.tgz npm http 200 https://registry.npmjs.org/umd/-/umd-1.1.1.tgz npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/minimatch npm http GET https://registry.npmjs.org/inherits npm http 200 https://registry.npmjs.org/zlib-browserify/0.0.1 npm http 200 https://registry.npmjs.org/JSONStream/-/JSONStream-0.4.4.tgz npm http GET https://registry.npmjs.org/zlib-browserify/-/zlib-browserify-0.0.1.tgz npm http 200 https://registry.npmjs.org/underscore npm http 200 https://registry.npmjs.org/estraverse npm http GET https://registry.npmjs.org/underscore/-/underscore-1.1.7.tgz npm http GET https://registry.npmjs.org/estraverse/-/estraverse-0.0.4.tgz npm http 200 https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/source-map/-/source-map-0.1.22.tgz npm http 304 https://registry.npmjs.org/colors npm http GET https://registry.npmjs.org/colors/-/colors-0.5.1.tgz npm http 304 https://registry.npmjs.org/minimatch npm http 200 https://registry.npmjs.org/graceful-fs npm http 304 https://registry.npmjs.org/async npm http 304 https://registry.npmjs.org/jshint npm http GET https://registry.npmjs.org/async/-/async-0.2.8.tgz npm http GET https://registry.npmjs.org/jshint/-/jshint-1.1.0.tgz npm http GET https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.1.tgz npm http 200 https://registry.npmjs.org/source-map npm http 200 https://registry.npmjs.org/underscore/-/underscore-1.1.7.tgz npm http 200 https://registry.npmjs.org/zlib-browserify/-/zlib-browserify-0.0.1.tgz npm http 200 https://registry.npmjs.org/estraverse/-/estraverse-0.0.4.tgz npm http 200 https://registry.npmjs.org/source-map/-/source-map-0.1.22.tgz npm http 304 https://registry.npmjs.org/inherits npm http 200 https://registry.npmjs.org/async/-/async-0.2.8.tgz npm http 200 https://registry.npmjs.org/colors/-/colors-0.5.1.tgz npm http 200 https://registry.npmjs.org/jshint/-/jshint-1.1.0.tgz npm http 200 https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.1.tgz npm http GET https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/rfile npm http GET https://registry.npmjs.org/ruglify npm http GET https://registry.npmjs.org/abbrev npm http GET https://registry.npmjs.org/uglify-js/1.3.4 npm http GET https://registry.npmjs.org/combine-source-map npm http GET https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/sigmund npm http GET https://registry.npmjs.org/wordwrap npm http GET https://registry.npmjs.org/resolve npm http GET https://registry.npmjs.org/commondir npm http GET https://registry.npmjs.org/lexical-scope npm http GET https://registry.npmjs.org/resolve/0.3.1 npm http GET https://registry.npmjs.org/console-browserify/0.1.6 npm http GET https://registry.npmjs.org/argparse npm http GET https://registry.npmjs.org/jsonparse/0.0.5 npm http GET https://registry.npmjs.org/detective npm http GET https://registry.npmjs.org/process npm http GET https://registry.npmjs.org/vm-browserify/0.0.1 npm http GET https://registry.npmjs.org/crypto-browserify/0.2.1 npm http GET https://registry.npmjs.org/http-browserify/0.1.11 npm http GET https://registry.npmjs.org/buffer-browserify/0.0.5 npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/esprima npm http GET https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/esprima npm http GET https://registry.npmjs.org/module-deps npm http GET https://registry.npmjs.org/browser-pack npm http GET https://registry.npmjs.org/lodash npm http GET https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/shell-quote npm http GET https://registry.npmjs.org/duplexer npm http GET https://registry.npmjs.org/concat-stream npm http GET https://registry.npmjs.org/zlib-browserify/0.0.1 npm http GET https://registry.npmjs.org/insert-module-globals npm http GET https://registry.npmjs.org/syntax-error npm http GET https://registry.npmjs.org/browser-resolve npm http GET https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/optimist npm http GET https://registry.npmjs.org/JSONStream npm http GET https://registry.npmjs.org/umd npm http GET https://registry.npmjs.org/uglify-js npm http GET https://registry.npmjs.org/amdefine npm http 304 https://registry.npmjs.org/through npm http 200 https://registry.npmjs.org/rfile npm http GET https://registry.npmjs.org/rfile/-/rfile-1.0.0.tgz npm http 200 https://registry.npmjs.org/ruglify npm http 200 https://registry.npmjs.org/abbrev npm http 200 https://registry.npmjs.org/uglify-js/1.3.4 npm http GET https://registry.npmjs.org/ruglify/-/ruglify-1.0.0.tgz npm http GET https://registry.npmjs.org/uglify-js/-/uglify-js-1.3.4.tgz npm http GET https://registry.npmjs.org/abbrev/-/abbrev-1.0.4.tgz npm http 200 https://registry.npmjs.org/combine-source-map npm http GET https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.1.2.tgz npm http 200 https://registry.npmjs.org/sigmund npm http GET https://registry.npmjs.org/sigmund/-/sigmund-1.0.0.tgz npm http 200 https://registry.npmjs.org/wordwrap npm http 200 https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz npm http GET https://registry.npmjs.org/lru-cache/-/lru-cache-2.3.0.tgz npm http GET https://registry.npmjs.org/shelljs npm http GET https://registry.npmjs.org/cli npm http GET https://registry.npmjs.org/console-browserify npm http GET https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/minimatch npm http 200 https://registry.npmjs.org/commondir npm http GET https://registry.npmjs.org/commondir/-/commondir-0.0.1.tgz npm http 200 https://registry.npmjs.org/resolve npm http 200 https://registry.npmjs.org/lexical-scope npm http GET https://registry.npmjs.org/lexical-scope/-/lexical-scope-0.0.11.tgz npm http 200 https://registry.npmjs.org/console-browserify/0.1.6 npm http GET https://registry.npmjs.org/console-browserify/-/console-browserify-0.1.6.tgz npm http 200 https://registry.npmjs.org/resolve/0.3.1 npm http GET https://registry.npmjs.org/resolve/-/resolve-0.3.1.tgz npm http 200 https://registry.npmjs.org/vm-browserify/0.0.1 npm http GET https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.1.tgz npm http 200 https://registry.npmjs.org/process npm http 200 https://registry.npmjs.org/jsonparse/0.0.5 npm http GET https://registry.npmjs.org/process/-/process-0.5.1.tgz npm http GET https://registry.npmjs.org/jsonparse/-/jsonparse-0.0.5.tgz npm http 200 https://registry.npmjs.org/detective npm http GET https://registry.npmjs.org/detective/-/detective-2.1.2.tgz npm http 200 https://registry.npmjs.org/crypto-browserify/0.2.1 npm http GET https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-0.2.1.tgz npm http 200 https://registry.npmjs.org/argparse npm http GET https://registry.npmjs.org/argparse/-/argparse-0.1.15.tgz npm http 200 https://registry.npmjs.org/http-browserify/0.1.11 npm http GET https://registry.npmjs.org/http-browserify/-/http-browserify-0.1.11.tgz npm http 304 https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.14.tgz npm http 200 https://registry.npmjs.org/buffer-browserify/0.0.5 npm http GET https://registry.npmjs.org/buffer-browserify/-/buffer-browserify-0.0.5.tgz npm http 304 https://registry.npmjs.org/esprima npm http GET https://registry.npmjs.org/esprima/-/esprima-0.9.9.tgz npm http 304 https://registry.npmjs.org/inherits npm http 304 https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/through/-/through-2.3.4.tgz npm http 304 https://registry.npmjs.org/esprima npm http 304 https://registry.npmjs.org/module-deps npm http GET https://registry.npmjs.org/module-deps/-/module-deps-0.6.2.tgz npm http 304 https://registry.npmjs.org/browser-pack npm http 304 https://registry.npmjs.org/lodash npm http GET https://registry.npmjs.org/lodash/-/lodash-1.0.1.tgz npm http 304 https://registry.npmjs.org/through npm http 304 https://registry.npmjs.org/concat-stream npm http 304 https://registry.npmjs.org/duplexer npm http 304 https://registry.npmjs.org/shell-quote npm http 304 https://registry.npmjs.org/zlib-browserify/0.0.1 npm http 304 https://registry.npmjs.org/insert-module-globals npm http 304 https://registry.npmjs.org/inherits npm http 304 https://registry.npmjs.org/browser-resolve npm http 304 https://registry.npmjs.org/syntax-error npm http 304 https://registry.npmjs.org/optimist npm http 304 https://registry.npmjs.org/umd npm http 304 https://registry.npmjs.org/uglify-js npm http 304 https://registry.npmjs.org/JSONStream npm http 200 https://registry.npmjs.org/rfile/-/rfile-1.0.0.tgz npm http GET https://registry.npmjs.org/uglify-js/-/uglify-js-2.2.5.tgz npm http 200 https://registry.npmjs.org/amdefine npm http GET https://registry.npmjs.org/amdefine/-/amdefine-0.0.5.tgz npm http 200 https://registry.npmjs.org/sigmund/-/sigmund-1.0.0.tgz npm http 200 https://registry.npmjs.org/ruglify/-/ruglify-1.0.0.tgz npm http 200 https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.1.2.tgz npm http 200 https://registry.npmjs.org/uglify-js/-/uglify-js-1.3.4.tgz npm http 200 https://registry.npmjs.org/abbrev/-/abbrev-1.0.4.tgz npm http 200 https://registry.npmjs.org/lru-cache/-/lru-cache-2.3.0.tgz npm http 200 https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz npm http 200 https://registry.npmjs.org/shelljs npm http GET https://registry.npmjs.org/shelljs/-/shelljs-0.1.4.tgz npm http 304 https://registry.npmjs.org/underscore npm http 304 https://registry.npmjs.org/minimatch npm http 200 https://registry.npmjs.org/console-browserify npm http GET https://registry.npmjs.org/peakle npm http GET https://github.com/ariya/esprima/tarball/master npm http GET https://registry.npmjs.org/underscore/-/underscore-1.4.4.tgz npm http 200 https://registry.npmjs.org/console-browserify/-/console-browserify-0.1.6.tgz npm http 200 https://registry.npmjs.org/lexical-scope/-/lexical-scope-0.0.11.tgz npm http 200 https://registry.npmjs.org/commondir/-/commondir-0.0.1.tgz npm http 200 https://registry.npmjs.org/resolve/-/resolve-0.3.1.tgz npm http 200 https://registry.npmjs.org/cli npm http GET https://registry.npmjs.org/cli/-/cli-0.4.4-2.tgz npm http 200 https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.1.tgz npm http 200 https://registry.npmjs.org/detective/-/detective-2.1.2.tgz npm http 200 https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-0.2.1.tgz npm http 200 https://registry.npmjs.org/jsonparse/-/jsonparse-0.0.5.tgz npm http 200 https://registry.npmjs.org/process/-/process-0.5.1.tgz npm http 200 https://registry.npmjs.org/esprima/-/esprima-0.9.9.tgz npm http 200 https://registry.npmjs.org/http-browserify/-/http-browserify-0.1.11.tgz npm http 200 https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.14.tgz npm http 200 https://registry.npmjs.org/buffer-browserify/-/buffer-browserify-0.0.5.tgz npm http 200 https://registry.npmjs.org/argparse/-/argparse-0.1.15.tgz npm http 200 https://registry.npmjs.org/lodash/-/lodash-1.0.1.tgz npm http 200 https://registry.npmjs.org/module-deps/-/module-deps-0.6.2.tgz npm http 200 https://registry.npmjs.org/through/-/through-2.3.4.tgz npm http 200 https://registry.npmjs.org/amdefine/-/amdefine-0.0.5.tgz npm http 200 https://registry.npmjs.org/uglify-js/-/uglify-js-2.2.5.tgz npm http 200 https://registry.npmjs.org/shelljs/-/shelljs-0.1.4.tgz npm http 200 https://registry.npmjs.org/peakle npm http 200 https://registry.npmjs.org/underscore/-/underscore-1.4.4.tgz npm http 200 https://github.com/ariya/esprima/tarball/master npm http GET https://registry.npmjs.org/peakle/-/peakle-0.0.1.tgz npm http 200 https://registry.npmjs.org/cli/-/cli-0.4.4-2.tgz npm http GET https://registry.npmjs.org/astw npm http GET https://registry.npmjs.org/esprima/1.0.2 npm http GET https://registry.npmjs.org/escodegen/0.0.15 npm http GET https://registry.npmjs.org/rfile npm http GET https://registry.npmjs.org/ruglify npm http GET https://registry.npmjs.org/uglify-js/1.3.4 npm http GET https://registry.npmjs.org/combine-source-map npm http GET https://registry.npmjs.org/wordwrap npm http GET https://registry.npmjs.org/resolve npm http GET https://registry.npmjs.org/detective npm http GET https://registry.npmjs.org/commondir npm http GET https://registry.npmjs.org/lexical-scope npm http GET https://registry.npmjs.org/resolve/0.3.1 npm http GET https://registry.npmjs.org/console-browserify/0.1.6 npm http GET https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/underscore.string npm http GET https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/process npm http GET https://registry.npmjs.org/vm-browserify/0.0.1 npm http GET https://registry.npmjs.org/crypto-browserify/0.2.1 npm http GET https://registry.npmjs.org/buffer-browserify/0.0.5 npm http GET https://registry.npmjs.org/zlib-browserify/0.0.1 npm http 200 https://registry.npmjs.org/peakle/-/peakle-0.0.1.tgz npm http GET https://registry.npmjs.org/convert-source-map npm http GET https://registry.npmjs.org/parse-base64vlq-mappings npm http GET https://registry.npmjs.org/inline-source-map npm http GET https://registry.npmjs.org/jsonparse/0.0.5 npm http 304 https://registry.npmjs.org/ruglify npm WARN prefer global jison@0.4.4 should be installed with -g npm http 200 https://registry.npmjs.org/astw npm http GET https://registry.npmjs.org/astw/-/astw-0.0.0.tgz npm http 304 https://registry.npmjs.org/rfile npm http 304 https://registry.npmjs.org/uglify-js/1.3.4 npm http 304 https://registry.npmjs.org/combine-source-map npm http 200 https://registry.npmjs.org/esprima/1.0.2 npm http 200 https://registry.npmjs.org/escodegen/0.0.15 npm http GET https://registry.npmjs.org/esprima/-/esprima-1.0.2.tgz npm http GET https://registry.npmjs.org/escodegen/-/escodegen-0.0.15.tgz npm http 304 https://registry.npmjs.org/wordwrap npm http 304 https://registry.npmjs.org/detective npm http 304 https://registry.npmjs.org/resolve npm http 304 https://registry.npmjs.org/lexical-scope npm http 304 https://registry.npmjs.org/commondir npm http 304 https://registry.npmjs.org/resolve/0.3.1 npm http 304 https://registry.npmjs.org/console-browserify/0.1.6 npm http 304 https://registry.npmjs.org/underscore npm http 304 https://registry.npmjs.org/underscore.string npm http 304 https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/callsite npm http GET https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/sigmund npm http GET https://registry.npmjs.org/glob npm http 304 https://registry.npmjs.org/crypto-browserify/0.2.1 npm http 304 https://registry.npmjs.org/zlib-browserify/0.0.1 npm http 304 https://registry.npmjs.org/buffer-browserify/0.0.5 npm http 304 https://registry.npmjs.org/vm-browserify/0.0.1 npm http 304 https://registry.npmjs.org/process npm http GET https://registry.npmjs.org/underscore.string/-/underscore.string-2.3.1.tgz npm http 200 https://registry.npmjs.org/convert-source-map npm http 200 https://registry.npmjs.org/inline-source-map npm http 200 https://registry.npmjs.org/parse-base64vlq-mappings npm http 304 https://registry.npmjs.org/jsonparse/0.0.5 npm http 200 https://registry.npmjs.org/astw/-/astw-0.0.0.tgz npm http GET https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.2.3.tgz npm http GET https://registry.npmjs.org/parse-base64vlq-mappings/-/parse-base64vlq-mappings-0.1.3.tgz npm http GET https://registry.npmjs.org/convert-source-map/-/convert-source-map-0.2.5.tgz npm http 304 https://registry.npmjs.org/lru-cache npm http 200 https://registry.npmjs.org/esprima/-/esprima-1.0.2.tgz npm http 200 https://registry.npmjs.org/escodegen/-/escodegen-0.0.15.tgz npm http 200 https://registry.npmjs.org/callsite npm http GET https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz npm http 200 https://registry.npmjs.org/underscore.string/-/underscore.string-2.3.1.tgz npm http 304 https://registry.npmjs.org/glob npm http 304 https://registry.npmjs.org/sigmund npm http 200 https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.2.3.tgz npm http 200 https://registry.npmjs.org/convert-source-map/-/convert-source-map-0.2.5.tgz npm http 200 https://registry.npmjs.org/parse-base64vlq-mappings/-/parse-base64vlq-mappings-0.1.3.tgz npm http GET https://registry.npmjs.org/glob/-/glob-3.2.1.tgz npm http 200 https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz npm http GET https://registry.npmjs.org/base64-js/0.0.2 npm http GET https://registry.npmjs.org/resolve npm http GET https://registry.npmjs.org/source-map npm http 200 https://registry.npmjs.org/glob/-/glob-3.2.1.tgz npm http GET https://registry.npmjs.org/concat-stream/0.0.8 npm http GET https://registry.npmjs.org/source-map npm http 200 https://registry.npmjs.org/base64-js/0.0.2 npm http GET https://registry.npmjs.org/base64-js/-/base64-js-0.0.2.tgz npm http 304 https://registry.npmjs.org/resolve npm http 304 https://registry.npmjs.org/source-map npm http 200 https://registry.npmjs.org/concat-stream/0.0.8 npm http GET https://registry.npmjs.org/concat-stream/-/concat-stream-0.0.8.tgz npm http 304 https://registry.npmjs.org/source-map npm http 200 https://registry.npmjs.org/base64-js/-/base64-js-0.0.2.tgz npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/amdefine npm http 304 https://registry.npmjs.org/graceful-fs npm http 304 https://registry.npmjs.org/amdefine npm http 304 https://registry.npmjs.org/inherits npm http 200 https://registry.npmjs.org/concat-stream/-/concat-stream-0.0.8.tgz npm http GET https://registry.npmjs.org/source-map npm http 304 https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/amdefine npm http GET https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/sigmund npm http GET https://registry.npmjs.org/glob npm http 304 https://registry.npmjs.org/amdefine npm http 304 https://registry.npmjs.org/sigmund npm http 304 https://registry.npmjs.org/glob npm http 304 https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/inherits npm http 304 https://registry.npmjs.org/graceful-fs npm http 304 https://registry.npmjs.org/inherits function-extended@0.0.4 node_modules/function-extended is-extended@0.0.8 node_modules/is-extended ht@0.0.2 node_modules/ht string-extended@0.0.5 node_modules/string-extended declare.js@0.0.4 node_modules/declare.js leafy@0.0.2 node_modules/leafy grunt-it@0.3.1 node_modules/grunt-it commander@1.1.1 node_modules/commander └── keypress@0.1.0 object-extended@0.0.5 node_modules/object-extended └── array-extended@0.0.4 extended@0.0.4 node_modules/extended └── extender@0.0.7 it@0.2.6 node_modules/it └── glob@3.1.21 (inherits@1.0.0, graceful-fs@1.2.1, minimatch@0.2.12) grunt-contrib-uglify@0.2.1 node_modules/grunt-contrib-uglify ├── grunt-lib-contrib@0.6.1 (zlib-browserify@0.0.1) └── uglify-js@2.3.6 (async@0.2.8, optimist@0.3.7, source-map@0.1.22) jison@0.4.4 node_modules/jison ├── lex-parser@0.1.0 ├── ebnf-parser@0.1.1 ├── jison-lex@0.2.0 ├── esprima@1.0.3 ├── JSONSelect@0.4.0 ├── nomnom@1.5.2 (colors@0.5.1, underscore@1.1.7) └── escodegen@0.0.21 (estraverse@0.0.4, source-map@0.1.22) grunt@0.4.1 node_modules/grunt ├── dateformat@1.0.2-1.2.3 ├── colors@0.6.0-1 ├── hooker@0.2.3 ├── async@0.1.22 ├── eventemitter2@0.4.11 ├── underscore.string@2.2.0rc ├── which@1.0.5 ├── coffee-script@1.3.3 ├── iconv-lite@0.2.9 ├── lodash@0.9.2 ├── glob@3.1.21 (inherits@1.0.0, graceful-fs@1.2.1) ├── nopt@1.0.10 (abbrev@1.0.4) ├── minimatch@0.2.12 (sigmund@1.0.0, lru-cache@2.3.0) ├── rimraf@2.0.3 (graceful-fs@1.1.14) ├── js-yaml@2.0.5 (esprima@1.0.3, argparse@0.1.15) └── findup-sync@0.1.2 (lodash@1.0.1) grunt-contrib-jshint@0.5.4 node_modules/grunt-contrib-jshint └── jshint@2.0.1 (console-browserify@0.1.6, underscore@1.4.4, shelljs@0.1.4, minimatch@0.2.12, cli@0.4.4-2) date-extended@0.0.4 node_modules/date-extended └── grunt-contrib-jshint@0.4.3 (jshint@1.1.0) promise-extended@0.0.6 node_modules/promise-extended └── grunt-contrib-jshint@0.3.0 (jshint@1.1.0) array-extended@0.0.5 node_modules/array-extended └── grunt-contrib-jshint@0.4.3 (jshint@1.1.0) browserify@2.14.2 node_modules/browserify ├── inherits@1.0.0 ├── concat-stream@0.1.1 ├── shell-quote@0.0.1 ├── duplexer@0.0.4 ├── through@2.2.7 ├── optimist@0.3.7 (wordwrap@0.0.2) ├── JSONStream@0.4.4 (jsonparse@0.0.5) ├── insert-module-globals@0.2.1 (process@0.5.1, commondir@0.0.1, lexical-scope@0.0.11) ├── umd@1.1.1 (through@2.3.4, ruglify@1.0.0, rfile@1.0.0, uglify-js@2.2.5) ├── browser-pack@0.8.1 (uglify-js@1.3.4, combine-source-map@0.1.2) ├── browser-resolve@0.1.1 (console-browserify@0.1.6, zlib-browserify@0.0.1, vm-browserify@0.0.1, crypto-browserify@0.2.1, resolve@0.3.1, buffer-browserify@0.0.5, http-browserify@0.1.11) ├── module-deps@0.8.0 (through@2.3.4, resolve@0.3.1, detective@2.1.2) └── syntax-error@0.0.1 (esprima@0.9.9) grunt-browserify@1.0.2 node_modules/grunt-browserify ├── browserify-shim@2.0.3 (through@2.2.7) └── browserify@2.12.5 (inherits@1.0.0, concat-stream@0.1.1, shell-quote@0.0.1, duplexer@0.0.4, through@2.2.7, optimist@0.3.7, JSONStream@0.4.4, insert-module-globals@0.2.1, umd@1.1.1, browser-pack@0.8.1, browser-resolve@0.1.1, module-deps@0.6.2, syntax-error@0.0.1)
timeout waiting to hear back from safari/6.0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: with functions: should create for [] ok 124 Rule: createRule: with functions: should create for Array function ok 125 Rule: createRule: with functions: should create for Boolean function ok 126 Rule: createRule: with functions: should create for RegExp function ok 127 Rule: createRule: with functions: should create for Object function ok 128 Rule: createRule: with functions: should create for custom functions ok 129 Rule: createRule: should should create a composite rule ok 130 Rule: createRule: should should create a not pattern ok 131 Rule: createRule: should should create a or pattern # tests 131 # pass 131 # fail 0
✓8.0
✓9.0
✓10.0
✓20.0
✓21.0
✓22.0
✓23.0
✓24.0
✓25.0
✓14.0
✓15.0
✓16.0
✓17.0
✓18.0
✓19.0
6.0
6.0
6.0
npm http GET https://registry.npmjs.org/grunt npm http GET https://registry.npmjs.org/declare.js npm http GET https://registry.npmjs.org/extended npm http GET https://registry.npmjs.org/is-extended npm http GET https://registry.npmjs.org/string-extended npm http GET https://registry.npmjs.org/array-extended npm http GET https://registry.npmjs.org/date-extended npm http GET https://registry.npmjs.org/function-extended npm http GET https://registry.npmjs.org/object-extended npm http GET https://registry.npmjs.org/promise-extended npm http GET https://registry.npmjs.org/leafy npm http GET https://registry.npmjs.org/ht npm http GET https://registry.npmjs.org/commander npm http GET https://registry.npmjs.org/it npm http GET https://registry.npmjs.org/jison npm http GET https://registry.npmjs.org/grunt-it npm http GET https://registry.npmjs.org/grunt-contrib-uglify npm http GET https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/grunt-browserify npm http GET https://registry.npmjs.org/browserify npm http 200 https://registry.npmjs.org/extended npm http GET https://registry.npmjs.org/extended/-/extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/is-extended npm http GET https://registry.npmjs.org/is-extended/-/is-extended-0.0.8.tgz npm http 200 https://registry.npmjs.org/string-extended npm http 200 https://registry.npmjs.org/declare.js npm http GET https://registry.npmjs.org/string-extended/-/string-extended-0.0.5.tgz npm http GET https://registry.npmjs.org/declare.js/-/declare.js-0.0.4.tgz npm http 200 https://registry.npmjs.org/grunt npm http GET https://registry.npmjs.org/grunt/-/grunt-0.4.1.tgz npm http 200 https://registry.npmjs.org/date-extended npm http GET https://registry.npmjs.org/date-extended/-/date-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/function-extended npm http GET https://registry.npmjs.org/function-extended/-/function-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/object-extended npm http GET https://registry.npmjs.org/object-extended/-/object-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/array-extended npm http GET https://registry.npmjs.org/array-extended/-/array-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/ht npm http GET https://registry.npmjs.org/ht/-/ht-0.0.2.tgz npm http 200 https://registry.npmjs.org/leafy npm http GET https://registry.npmjs.org/leafy/-/leafy-0.0.2.tgz npm http 200 https://registry.npmjs.org/promise-extended npm http GET https://registry.npmjs.org/promise-extended/-/promise-extended-0.0.6.tgz npm http 200 https://registry.npmjs.org/commander npm http GET https://registry.npmjs.org/commander/-/commander-1.1.1.tgz npm http 200 https://registry.npmjs.org/it npm http GET https://registry.npmjs.org/it/-/it-0.2.6.tgz npm http 200 https://registry.npmjs.org/grunt-it npm http GET https://registry.npmjs.org/grunt-it/-/grunt-it-0.3.1.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-uglify npm http GET https://registry.npmjs.org/grunt-contrib-uglify/-/grunt-contrib-uglify-0.2.1.tgz npm http 200 https://registry.npmjs.org/jison npm http GET https://registry.npmjs.org/jison/-/jison-0.4.4.tgz npm http 200 https://registry.npmjs.org/grunt-browserify npm http 200 https://registry.npmjs.org/extended/-/extended-0.0.4.tgz npm http GET https://registry.npmjs.org/grunt-browserify/-/grunt-browserify-1.0.2.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.5.4.tgz npm http 200 https://registry.npmjs.org/is-extended/-/is-extended-0.0.8.tgz npm http 200 https://registry.npmjs.org/string-extended/-/string-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/declare.js/-/declare.js-0.0.4.tgz npm http 200 https://registry.npmjs.org/grunt/-/grunt-0.4.1.tgz npm http 200 https://registry.npmjs.org/function-extended/-/function-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/object-extended/-/object-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/date-extended/-/date-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/array-extended/-/array-extended-0.0.5.tgz npm http 200 https://registry.npmjs.org/commander/-/commander-1.1.1.tgz npm http 200 https://registry.npmjs.org/leafy/-/leafy-0.0.2.tgz npm http 200 https://registry.npmjs.org/ht/-/ht-0.0.2.tgz npm http 200 https://registry.npmjs.org/promise-extended/-/promise-extended-0.0.6.tgz npm http 200 https://registry.npmjs.org/it/-/it-0.2.6.tgz npm http 200 https://registry.npmjs.org/grunt-it/-/grunt-it-0.3.1.tgz npm http 200 https://registry.npmjs.org/jison/-/jison-0.4.4.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-uglify/-/grunt-contrib-uglify-0.2.1.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.5.4.tgz npm http 200 https://registry.npmjs.org/grunt-browserify/-/grunt-browserify-1.0.2.tgz npm http 200 https://registry.npmjs.org/browserify npm http GET https://registry.npmjs.org/browserify/-/browserify-2.14.2.tgz npm http 200 https://registry.npmjs.org/browserify/-/browserify-2.14.2.tgz npm http GET https://registry.npmjs.org/keypress npm http GET https://registry.npmjs.org/array-extended/0.0.4 npm http GET https://registry.npmjs.org/jshint npm http GET https://registry.npmjs.org/JSONSelect/0.4.0 npm http GET https://registry.npmjs.org/esprima npm http GET https://registry.npmjs.org/extender npm http GET https://registry.npmjs.org/uglify-js npm http GET https://registry.npmjs.org/grunt-lib-contrib npm http GET https://registry.npmjs.org/browserify-shim npm http GET https://registry.npmjs.org/async npm http GET https://registry.npmjs.org/coffee-script npm http GET https://registry.npmjs.org/escodegen/0.0.21 npm http GET https://registry.npmjs.org/colors npm http GET https://registry.npmjs.org/jison-lex npm http GET https://registry.npmjs.org/dateformat/1.0.2-1.2.3 npm http GET https://registry.npmjs.org/ebnf-parser npm http GET https://registry.npmjs.org/eventemitter2 npm http GET https://registry.npmjs.org/lex-parser npm http GET https://registry.npmjs.org/findup-sync npm http GET https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/browserify npm http GET https://registry.npmjs.org/nomnom/1.5.2 npm http GET https://registry.npmjs.org/glob npm http GET https://registry.npmjs.org/hooker npm http GET https://registry.npmjs.org/iconv-lite npm http GET https://registry.npmjs.org/minimatch npm http GET https://registry.npmjs.org/nopt npm http GET https://registry.npmjs.org/rimraf npm http GET https://registry.npmjs.org/lodash npm http GET https://registry.npmjs.org/underscore.string npm http GET https://registry.npmjs.org/which npm http GET https://registry.npmjs.org/js-yaml npm http GET https://registry.npmjs.org/module-deps npm http GET https://registry.npmjs.org/browser-pack npm http GET https://registry.npmjs.org/shell-quote npm http GET https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/duplexer npm http GET https://registry.npmjs.org/concat-stream npm http GET https://registry.npmjs.org/insert-module-globals npm http GET https://registry.npmjs.org/syntax-error npm http GET https://registry.npmjs.org/browser-resolve npm http GET https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/optimist npm http GET https://registry.npmjs.org/JSONStream npm http GET https://registry.npmjs.org/umd npm http 200 https://registry.npmjs.org/array-extended/0.0.4 npm http 200 https://registry.npmjs.org/JSONSelect/0.4.0 npm http 200 https://registry.npmjs.org/keypress npm http 200 https://registry.npmjs.org/esprima npm http GET https://registry.npmjs.org/array-extended/-/array-extended-0.0.4.tgz npm http GET https://registry.npmjs.org/keypress/-/keypress-0.1.0.tgz npm http GET https://registry.npmjs.org/esprima/-/esprima-1.0.3.tgz npm http GET https://registry.npmjs.org/JSONSelect/-/JSONSelect-0.4.0.tgz npm http 200 https://registry.npmjs.org/jshint npm http GET https://registry.npmjs.org/jshint/-/jshint-2.0.1.tgz npm http 200 https://registry.npmjs.org/grunt-lib-contrib npm http GET https://registry.npmjs.org/grunt-lib-contrib/-/grunt-lib-contrib-0.6.1.tgz npm http 200 https://registry.npmjs.org/extender npm http GET https://registry.npmjs.org/extender/-/extender-0.0.7.tgz npm http 200 https://registry.npmjs.org/browserify-shim npm http GET https://registry.npmjs.org/browserify-shim/-/browserify-shim-2.0.3.tgz npm http 200 https://registry.npmjs.org/uglify-js npm http 200 https://registry.npmjs.org/colors npm http 200 https://registry.npmjs.org/coffee-script npm http 200 https://registry.npmjs.org/escodegen/0.0.21 npm http GET https://registry.npmjs.org/uglify-js/-/uglify-js-2.3.6.tgz npm http GET https://registry.npmjs.org/colors/-/colors-0.6.0-1.tgz npm http GET https://registry.npmjs.org/coffee-script/-/coffee-script-1.3.3.tgz npm http GET https://registry.npmjs.org/escodegen/-/escodegen-0.0.21.tgz npm http 200 https://registry.npmjs.org/async npm http 200 https://registry.npmjs.org/jison-lex npm http GET https://registry.npmjs.org/async/-/async-0.1.22.tgz npm http GET https://registry.npmjs.org/jison-lex/-/jison-lex-0.2.0.tgz npm http 200 https://registry.npmjs.org/dateformat/1.0.2-1.2.3 npm http GET https://registry.npmjs.org/dateformat/-/dateformat-1.0.2-1.2.3.tgz npm http 200 https://registry.npmjs.org/ebnf-parser npm http GET https://registry.npmjs.org/ebnf-parser/-/ebnf-parser-0.1.1.tgz npm http 200 https://registry.npmjs.org/eventemitter2 npm http GET https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.11.tgz npm http 200 https://registry.npmjs.org/lex-parser npm http GET https://registry.npmjs.org/lex-parser/-/lex-parser-0.1.0.tgz npm http 304 https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.4.3.tgz npm http 304 https://registry.npmjs.org/grunt-contrib-jshint npm http GET https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.3.0.tgz npm http 200 https://registry.npmjs.org/findup-sync npm http GET https://registry.npmjs.org/findup-sync/-/findup-sync-0.1.2.tgz npm http 304 https://registry.npmjs.org/browserify npm http GET https://registry.npmjs.org/browserify/-/browserify-2.12.5.tgz npm http 200 https://registry.npmjs.org/nomnom/1.5.2 npm http GET https://registry.npmjs.org/nomnom/-/nomnom-1.5.2.tgz npm http 200 https://registry.npmjs.org/iconv-lite npm http GET https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.2.9.tgz npm http 200 https://registry.npmjs.org/hooker npm http GET https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz npm http 200 https://registry.npmjs.org/minimatch npm http 200 https://registry.npmjs.org/glob npm http GET https://registry.npmjs.org/minimatch/-/minimatch-0.2.12.tgz npm http GET https://registry.npmjs.org/glob/-/glob-3.1.21.tgz npm http 200 https://registry.npmjs.org/rimraf npm http GET https://registry.npmjs.org/rimraf/-/rimraf-2.0.3.tgz npm http 200 https://registry.npmjs.org/nopt npm http GET https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz npm http 200 https://registry.npmjs.org/which npm http GET https://registry.npmjs.org/which/-/which-1.0.5.tgz npm http 200 https://registry.npmjs.org/underscore.string npm http GET https://registry.npmjs.org/underscore.string/-/underscore.string-2.2.0rc.tgz npm http 200 https://registry.npmjs.org/js-yaml npm http GET https://registry.npmjs.org/js-yaml/-/js-yaml-2.0.5.tgz npm http 200 https://registry.npmjs.org/module-deps npm http GET https://registry.npmjs.org/module-deps/-/module-deps-0.8.0.tgz npm http 200 https://registry.npmjs.org/shell-quote npm http GET https://registry.npmjs.org/shell-quote/-/shell-quote-0.0.1.tgz npm http 200 https://registry.npmjs.org/browser-pack npm http GET https://registry.npmjs.org/browser-pack/-/browser-pack-0.8.1.tgz npm http 200 https://registry.npmjs.org/lodash npm http GET https://registry.npmjs.org/lodash/-/lodash-0.9.2.tgz npm http 200 https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/through/-/through-2.2.7.tgz npm http 200 https://registry.npmjs.org/duplexer npm http GET https://registry.npmjs.org/duplexer/-/duplexer-0.0.4.tgz npm http 200 https://registry.npmjs.org/insert-module-globals npm http GET https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-0.2.1.tgz npm http 200 https://registry.npmjs.org/syntax-error npm http 200 https://registry.npmjs.org/concat-stream npm http GET https://registry.npmjs.org/syntax-error/-/syntax-error-0.0.1.tgz npm http GET https://registry.npmjs.org/concat-stream/-/concat-stream-0.1.1.tgz npm http 200 https://registry.npmjs.org/browser-resolve npm http GET https://registry.npmjs.org/browser-resolve/-/browser-resolve-0.1.1.tgz npm http 200 https://registry.npmjs.org/array-extended/-/array-extended-0.0.4.tgz npm http 200 https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/inherits/-/inherits-1.0.0.tgz npm http 200 https://registry.npmjs.org/umd npm http 200 https://registry.npmjs.org/optimist npm http GET https://registry.npmjs.org/umd/-/umd-1.1.1.tgz npm http GET https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz npm http 200 https://registry.npmjs.org/JSONStream npm http GET https://registry.npmjs.org/JSONStream/-/JSONStream-0.4.4.tgz npm http 200 https://registry.npmjs.org/keypress/-/keypress-0.1.0.tgz npm http 200 https://registry.npmjs.org/esprima/-/esprima-1.0.3.tgz npm http 200 https://registry.npmjs.org/grunt-lib-contrib/-/grunt-lib-contrib-0.6.1.tgz npm http 200 https://registry.npmjs.org/JSONSelect/-/JSONSelect-0.4.0.tgz npm http 200 https://registry.npmjs.org/jshint/-/jshint-2.0.1.tgz npm http 200 https://registry.npmjs.org/extender/-/extender-0.0.7.tgz npm http 200 https://registry.npmjs.org/browserify-shim/-/browserify-shim-2.0.3.tgz npm http 200 https://registry.npmjs.org/uglify-js/-/uglify-js-2.3.6.tgz npm http 200 https://registry.npmjs.org/colors/-/colors-0.6.0-1.tgz npm http 200 https://registry.npmjs.org/escodegen/-/escodegen-0.0.21.tgz npm http 200 https://registry.npmjs.org/coffee-script/-/coffee-script-1.3.3.tgz npm http 200 https://registry.npmjs.org/dateformat/-/dateformat-1.0.2-1.2.3.tgz npm http 200 https://registry.npmjs.org/ebnf-parser/-/ebnf-parser-0.1.1.tgz npm http 200 https://registry.npmjs.org/jison-lex/-/jison-lex-0.2.0.tgz npm http 200 https://registry.npmjs.org/async/-/async-0.1.22.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.3.0.tgz npm http 200 https://registry.npmjs.org/findup-sync/-/findup-sync-0.1.2.tgz npm http 200 https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.4.3.tgz npm http 200 https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.11.tgz npm http 200 https://registry.npmjs.org/lex-parser/-/lex-parser-0.1.0.tgz npm http 200 https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.2.9.tgz npm http 200 https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz npm http 200 https://registry.npmjs.org/nomnom/-/nomnom-1.5.2.tgz npm http 200 https://registry.npmjs.org/browserify/-/browserify-2.12.5.tgz npm http 200 https://registry.npmjs.org/minimatch/-/minimatch-0.2.12.tgz npm http 200 https://registry.npmjs.org/glob/-/glob-3.1.21.tgz npm http 200 https://registry.npmjs.org/rimraf/-/rimraf-2.0.3.tgz npm http 200 https://registry.npmjs.org/which/-/which-1.0.5.tgz npm http 200 https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz npm http GET https://registry.npmjs.org/zlib-browserify/0.0.1 npm http GET https://registry.npmjs.org/jshint npm http 200 https://registry.npmjs.org/browser-pack/-/browser-pack-0.8.1.tgz npm http 200 https://registry.npmjs.org/module-deps/-/module-deps-0.8.0.tgz npm http 200 https://registry.npmjs.org/underscore.string/-/underscore.string-2.2.0rc.tgz npm http 200 https://registry.npmjs.org/js-yaml/-/js-yaml-2.0.5.tgz npm http 200 https://registry.npmjs.org/shell-quote/-/shell-quote-0.0.1.tgz npm http GET https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/async npm http 200 https://registry.npmjs.org/syntax-error/-/syntax-error-0.0.1.tgz npm http 200 https://registry.npmjs.org/through/-/through-2.2.7.tgz npm http 200 https://registry.npmjs.org/duplexer/-/duplexer-0.0.4.tgz npm http 200 https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-0.2.1.tgz npm http 200 https://registry.npmjs.org/lodash/-/lodash-0.9.2.tgz npm http GET https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/colors npm http 200 https://registry.npmjs.org/concat-stream/-/concat-stream-0.1.1.tgz npm http 200 https://registry.npmjs.org/inherits/-/inherits-1.0.0.tgz npm http 200 https://registry.npmjs.org/umd/-/umd-1.1.1.tgz npm http 200 https://registry.npmjs.org/browser-resolve/-/browser-resolve-0.1.1.tgz npm http GET https://registry.npmjs.org/estraverse npm http GET https://registry.npmjs.org/source-map npm http 200 https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/minimatch npm http GET https://registry.npmjs.org/inherits npm http 200 https://registry.npmjs.org/JSONStream/-/JSONStream-0.4.4.tgz npm http 304 https://registry.npmjs.org/async npm http 200 https://registry.npmjs.org/zlib-browserify/0.0.1 npm http 304 https://registry.npmjs.org/jshint npm http GET https://registry.npmjs.org/jshint/-/jshint-1.1.0.tgz npm http GET https://registry.npmjs.org/async/-/async-0.2.8.tgz npm http GET https://registry.npmjs.org/zlib-browserify/-/zlib-browserify-0.0.1.tgz npm http 200 https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/source-map/-/source-map-0.1.22.tgz npm http 304 https://registry.npmjs.org/colors npm http GET https://registry.npmjs.org/colors/-/colors-0.5.1.tgz npm http 200 https://registry.npmjs.org/underscore npm http 200 https://registry.npmjs.org/estraverse npm http GET https://registry.npmjs.org/underscore/-/underscore-1.1.7.tgz npm http GET https://registry.npmjs.org/estraverse/-/estraverse-0.0.4.tgz npm http 200 https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.1.tgz npm http 304 https://registry.npmjs.org/minimatch npm http 200 https://registry.npmjs.org/jshint/-/jshint-1.1.0.tgz npm http 200 https://registry.npmjs.org/source-map npm http 304 https://registry.npmjs.org/inherits npm http 200 https://registry.npmjs.org/async/-/async-0.2.8.tgz npm http GET https://registry.npmjs.org/through npm http 200 https://registry.npmjs.org/source-map/-/source-map-0.1.22.tgz npm http 200 https://registry.npmjs.org/zlib-browserify/-/zlib-browserify-0.0.1.tgz npm http 200 https://registry.npmjs.org/colors/-/colors-0.5.1.tgz npm http 200 https://registry.npmjs.org/underscore/-/underscore-1.1.7.tgz npm http GET https://registry.npmjs.org/shell-quote npm http GET https://registry.npmjs.org/module-deps npm http GET https://registry.npmjs.org/duplexer npm http GET https://registry.npmjs.org/concat-stream npm http GET https://registry.npmjs.org/insert-module-globals npm http GET https://registry.npmjs.org/syntax-error npm http GET https://registry.npmjs.org/browser-pack npm http GET https://registry.npmjs.org/browser-resolve npm http GET https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/umd npm http GET https://registry.npmjs.org/optimist npm http 200 https://registry.npmjs.org/estraverse/-/estraverse-0.0.4.tgz npm http 200 https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.1.tgz npm http 304 https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/abbrev npm http GET https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/sigmund npm http GET https://registry.npmjs.org/argparse npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/esprima npm http GET https://registry.npmjs.org/lodash npm http GET https://registry.npmjs.org/rfile npm http GET https://registry.npmjs.org/ruglify npm http GET https://registry.npmjs.org/uglify-js/1.3.4 npm http GET https://registry.npmjs.org/combine-source-map npm http GET https://registry.npmjs.org/esprima npm http GET https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/uglify-js npm http 304 https://registry.npmjs.org/concat-stream npm http 304 https://registry.npmjs.org/module-deps npm http 304 https://registry.npmjs.org/duplexer npm http GET https://registry.npmjs.org/wordwrap npm http GET https://registry.npmjs.org/resolve npm http GET https://registry.npmjs.org/commondir npm http GET https://registry.npmjs.org/lexical-scope npm http GET https://registry.npmjs.org/resolve/0.3.1 npm http GET https://registry.npmjs.org/console-browserify/0.1.6 npm http GET https://registry.npmjs.org/detective npm http GET https://registry.npmjs.org/process npm http GET https://registry.npmjs.org/vm-browserify/0.0.1 npm http GET https://registry.npmjs.org/crypto-browserify/0.2.1 npm http GET https://registry.npmjs.org/http-browserify/0.1.11 npm http GET https://registry.npmjs.org/buffer-browserify/0.0.5 npm http GET https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/zlib-browserify/0.0.1 npm http GET https://registry.npmjs.org/module-deps/-/module-deps-0.6.2.tgz npm http 304 https://registry.npmjs.org/shell-quote npm http GET https://registry.npmjs.org/jsonparse/0.0.5 npm http GET https://registry.npmjs.org/amdefine npm http 304 https://registry.npmjs.org/syntax-error npm http 304 https://registry.npmjs.org/insert-module-globals npm http 304 https://registry.npmjs.org/browser-pack npm http 304 https://registry.npmjs.org/browser-resolve npm http 304 https://registry.npmjs.org/umd npm http 304 https://registry.npmjs.org/inherits npm http 304 https://registry.npmjs.org/optimist npm http 200 https://registry.npmjs.org/abbrev npm http GET https://registry.npmjs.org/abbrev/-/abbrev-1.0.4.tgz npm http 304 https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.14.tgz npm http 304 https://registry.npmjs.org/inherits npm http 200 https://registry.npmjs.org/sigmund npm http GET https://registry.npmjs.org/sigmund/-/sigmund-1.0.0.tgz npm http 200 https://registry.npmjs.org/argparse npm http 304 https://registry.npmjs.org/esprima npm http GET https://registry.npmjs.org/argparse/-/argparse-0.1.15.tgz npm http 304 https://registry.npmjs.org/lodash npm http GET https://registry.npmjs.org/lodash/-/lodash-1.0.1.tgz npm http 200 https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/lru-cache/-/lru-cache-2.3.0.tgz npm http 200 https://registry.npmjs.org/ruglify npm http 200 https://registry.npmjs.org/rfile npm http GET https://registry.npmjs.org/ruglify/-/ruglify-1.0.0.tgz npm http GET https://registry.npmjs.org/rfile/-/rfile-1.0.0.tgz npm http 304 https://registry.npmjs.org/esprima npm http 200 https://registry.npmjs.org/combine-source-map npm http GET https://registry.npmjs.org/esprima/-/esprima-0.9.9.tgz npm http GET https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.1.2.tgz npm http 304 https://registry.npmjs.org/uglify-js npm http 304 https://registry.npmjs.org/through npm http GET https://registry.npmjs.org/uglify-js/-/uglify-js-2.2.5.tgz npm http 200 https://registry.npmjs.org/uglify-js/1.3.4 npm http GET https://registry.npmjs.org/through/-/through-2.3.4.tgz npm http GET https://registry.npmjs.org/uglify-js/-/uglify-js-1.3.4.tgz npm http GET https://registry.npmjs.org/shelljs npm http GET https://registry.npmjs.org/cli npm http GET https://registry.npmjs.org/console-browserify npm http GET https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/minimatch npm http 200 https://registry.npmjs.org/lexical-scope npm http 200 https://registry.npmjs.org/wordwrap npm http 200 https://registry.npmjs.org/commondir npm http GET https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz npm http GET https://registry.npmjs.org/lexical-scope/-/lexical-scope-0.0.11.tgz npm http GET https://registry.npmjs.org/commondir/-/commondir-0.0.1.tgz npm http 200 https://registry.npmjs.org/resolve/0.3.1 npm http GET https://registry.npmjs.org/resolve/-/resolve-0.3.1.tgz npm http 200 https://registry.npmjs.org/resolve npm http 200 https://registry.npmjs.org/console-browserify/0.1.6 npm http 200 https://registry.npmjs.org/vm-browserify/0.0.1 npm http 200 https://registry.npmjs.org/process npm http GET https://registry.npmjs.org/process/-/process-0.5.1.tgz npm http GET https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.1.tgz npm http GET https://registry.npmjs.org/console-browserify/-/console-browserify-0.1.6.tgz npm http 200 https://registry.npmjs.org/detective npm http GET https://registry.npmjs.org/detective/-/detective-2.1.2.tgz npm http 200 https://registry.npmjs.org/crypto-browserify/0.2.1 npm http GET https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-0.2.1.tgz npm http 304 https://registry.npmjs.org/zlib-browserify/0.0.1 npm http 200 https://registry.npmjs.org/module-deps/-/module-deps-0.6.2.tgz npm http 200 https://registry.npmjs.org/buffer-browserify/0.0.5 npm http 304 https://registry.npmjs.org/through npm http 200 https://registry.npmjs.org/http-browserify/0.1.11 npm http GET https://registry.npmjs.org/buffer-browserify/-/buffer-browserify-0.0.5.tgz npm http GET https://registry.npmjs.org/http-browserify/-/http-browserify-0.1.11.tgz npm http 200 https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.14.tgz npm http 200 https://registry.npmjs.org/sigmund/-/sigmund-1.0.0.tgz npm http 200 https://registry.npmjs.org/abbrev/-/abbrev-1.0.4.tgz npm http 200 https://registry.npmjs.org/jsonparse/0.0.5 npm http GET https://registry.npmjs.org/jsonparse/-/jsonparse-0.0.5.tgz npm http 200 https://registry.npmjs.org/argparse/-/argparse-0.1.15.tgz npm http 200 https://registry.npmjs.org/amdefine npm http GET https://registry.npmjs.org/amdefine/-/amdefine-0.0.5.tgz npm http 200 https://registry.npmjs.org/ruglify/-/ruglify-1.0.0.tgz npm http 200 https://registry.npmjs.org/lodash/-/lodash-1.0.1.tgz npm http 200 https://registry.npmjs.org/lru-cache/-/lru-cache-2.3.0.tgz npm http 200 https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.1.2.tgz npm http 200 https://registry.npmjs.org/rfile/-/rfile-1.0.0.tgz npm http 200 https://registry.npmjs.org/esprima/-/esprima-0.9.9.tgz npm http 200 https://registry.npmjs.org/uglify-js/-/uglify-js-2.2.5.tgz npm http 200 https://registry.npmjs.org/uglify-js/-/uglify-js-1.3.4.tgz npm http 200 https://registry.npmjs.org/through/-/through-2.3.4.tgz npm http 200 https://registry.npmjs.org/shelljs npm http GET https://registry.npmjs.org/shelljs/-/shelljs-0.1.4.tgz npm http 200 https://registry.npmjs.org/console-browserify npm http 304 https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/underscore/-/underscore-1.4.4.tgz npm http 304 https://registry.npmjs.org/minimatch npm http 200 https://registry.npmjs.org/cli npm http GET https://registry.npmjs.org/rfile npm http GET https://registry.npmjs.org/cli/-/cli-0.4.4-2.tgz npm http 200 https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz npm http 200 https://registry.npmjs.org/lexical-scope/-/lexical-scope-0.0.11.tgz npm http GET https://registry.npmjs.org/combine-source-map npm http GET https://registry.npmjs.org/zlib-browserify/0.0.1 npm http 200 https://registry.npmjs.org/process/-/process-0.5.1.tgz npm http 200 https://registry.npmjs.org/resolve/-/resolve-0.3.1.tgz npm http 200 https://registry.npmjs.org/commondir/-/commondir-0.0.1.tgz npm http 200 https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.1.tgz npm http 200 https://registry.npmjs.org/console-browserify/-/console-browserify-0.1.6.tgz npm http 200 https://registry.npmjs.org/http-browserify/-/http-browserify-0.1.11.tgz npm http 200 https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-0.2.1.tgz npm http 200 https://registry.npmjs.org/buffer-browserify/-/buffer-browserify-0.0.5.tgz npm http 200 https://registry.npmjs.org/detective/-/detective-2.1.2.tgz npm http 200 https://registry.npmjs.org/jsonparse/-/jsonparse-0.0.5.tgz npm http 200 https://registry.npmjs.org/amdefine/-/amdefine-0.0.5.tgz npm http 200 https://registry.npmjs.org/shelljs/-/shelljs-0.1.4.tgz npm http 200 https://registry.npmjs.org/underscore/-/underscore-1.4.4.tgz npm http GET https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/underscore.string npm http 304 https://registry.npmjs.org/zlib-browserify/0.0.1 npm http 200 https://registry.npmjs.org/cli/-/cli-0.4.4-2.tgz npm http 304 https://registry.npmjs.org/combine-source-map npm http 304 https://registry.npmjs.org/rfile npm http 304 https://registry.npmjs.org/underscore.string npm http 304 https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/underscore.string/-/underscore.string-2.3.1.tgz npm http GET https://registry.npmjs.org/astw npm http 200 https://registry.npmjs.org/underscore.string/-/underscore.string-2.3.1.tgz npm http GET https://registry.npmjs.org/callsite npm http GET https://registry.npmjs.org/esprima/1.0.2 npm http GET https://registry.npmjs.org/escodegen/0.0.15 npm http GET https://registry.npmjs.org/resolve npm http GET https://registry.npmjs.org/source-map npm WARN prefer global jison@0.4.4 should be installed with -g npm http 200 https://registry.npmjs.org/astw npm http GET https://registry.npmjs.org/convert-source-map npm http GET https://registry.npmjs.org/parse-base64vlq-mappings npm http GET https://registry.npmjs.org/inline-source-map npm http GET https://registry.npmjs.org/astw/-/astw-0.0.0.tgz npm http 304 https://registry.npmjs.org/resolve npm http 200 https://registry.npmjs.org/escodegen/0.0.15 npm http 200 https://registry.npmjs.org/esprima/1.0.2 npm http 200 https://registry.npmjs.org/callsite npm http GET https://registry.npmjs.org/escodegen/-/escodegen-0.0.15.tgz npm http GET https://registry.npmjs.org/esprima/-/esprima-1.0.2.tgz npm http GET https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz npm http GET https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/glob npm http GET https://registry.npmjs.org/sigmund npm http 304 https://registry.npmjs.org/source-map npm http 200 https://registry.npmjs.org/astw/-/astw-0.0.0.tgz npm http 200 https://registry.npmjs.org/convert-source-map npm http 200 https://registry.npmjs.org/inline-source-map npm http 200 https://registry.npmjs.org/parse-base64vlq-mappings npm http 200 https://registry.npmjs.org/escodegen/-/escodegen-0.0.15.tgz npm http 200 https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz npm http 200 https://registry.npmjs.org/esprima/-/esprima-1.0.2.tgz npm http 304 https://registry.npmjs.org/lru-cache npm http 304 https://registry.npmjs.org/glob npm http GET https://registry.npmjs.org/base64-js/0.0.2 npm http GET https://registry.npmjs.org/convert-source-map/-/convert-source-map-0.2.5.tgz npm http GET https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.2.3.tgz npm http GET https://registry.npmjs.org/glob/-/glob-3.2.1.tgz npm http 304 https://registry.npmjs.org/sigmund npm http GET https://registry.npmjs.org/parse-base64vlq-mappings/-/parse-base64vlq-mappings-0.1.3.tgz npm http 200 https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.2.3.tgz npm http 200 https://registry.npmjs.org/glob/-/glob-3.2.1.tgz npm http 200 https://registry.npmjs.org/convert-source-map/-/convert-source-map-0.2.5.tgz npm http 200 https://registry.npmjs.org/base64-js/0.0.2 npm http GET https://registry.npmjs.org/base64-js/-/base64-js-0.0.2.tgz npm http GET https://registry.npmjs.org/concat-stream/0.0.8 npm http GET https://registry.npmjs.org/amdefine npm http 200 https://registry.npmjs.org/parse-base64vlq-mappings/-/parse-base64vlq-mappings-0.1.3.tgz npm http 200 https://registry.npmjs.org/base64-js/-/base64-js-0.0.2.tgz npm http 304 https://registry.npmjs.org/amdefine npm http 200 https://registry.npmjs.org/concat-stream/0.0.8 npm http GET https://registry.npmjs.org/concat-stream/-/concat-stream-0.0.8.tgz npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/inherits npm http GET https://registry.npmjs.org/peakle npm http GET https://github.com/ariya/esprima/tarball/master npm http GET https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/shelljs npm http GET https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/cli npm http GET https://registry.npmjs.org/minimatch npm http 200 https://registry.npmjs.org/concat-stream/-/concat-stream-0.0.8.tgz npm http 304 https://registry.npmjs.org/shelljs npm http 304 https://registry.npmjs.org/graceful-fs npm http 304 https://registry.npmjs.org/inherits npm http 304 https://registry.npmjs.org/underscore npm http 304 https://registry.npmjs.org/source-map npm http 200 https://registry.npmjs.org/peakle npm http 304 https://registry.npmjs.org/cli npm http GET https://registry.npmjs.org/peakle/-/peakle-0.0.1.tgz npm http 304 https://registry.npmjs.org/minimatch npm http GET https://registry.npmjs.org/amdefine npm http 200 https://github.com/ariya/esprima/tarball/master npm http 304 https://registry.npmjs.org/amdefine npm http 200 https://registry.npmjs.org/peakle/-/peakle-0.0.1.tgz npm http GET https://registry.npmjs.org/source-map npm http 304 https://registry.npmjs.org/source-map npm http GET https://registry.npmjs.org/amdefine npm http 304 https://registry.npmjs.org/amdefine npm http GET https://registry.npmjs.org/lru-cache npm http GET https://registry.npmjs.org/sigmund npm http GET https://registry.npmjs.org/glob npm http 304 https://registry.npmjs.org/lru-cache npm http 304 https://registry.npmjs.org/sigmund npm http 304 https://registry.npmjs.org/glob npm http GET https://registry.npmjs.org/graceful-fs npm http GET https://registry.npmjs.org/inherits npm http 304 https://registry.npmjs.org/graceful-fs npm http 304 https://registry.npmjs.org/inherits function-extended@0.0.4 node_modules/function-extended is-extended@0.0.8 node_modules/is-extended ht@0.0.2 node_modules/ht string-extended@0.0.5 node_modules/string-extended declare.js@0.0.4 node_modules/declare.js leafy@0.0.2 node_modules/leafy grunt-it@0.3.1 node_modules/grunt-it object-extended@0.0.5 node_modules/object-extended └── array-extended@0.0.4 commander@1.1.1 node_modules/commander └── keypress@0.1.0 extended@0.0.4 node_modules/extended └── extender@0.0.7 it@0.2.6 node_modules/it └── glob@3.1.21 (inherits@1.0.0, graceful-fs@1.2.1, minimatch@0.2.12) grunt-contrib-uglify@0.2.1 node_modules/grunt-contrib-uglify ├── grunt-lib-contrib@0.6.1 (zlib-browserify@0.0.1) └── uglify-js@2.3.6 (async@0.2.8, optimist@0.3.7, source-map@0.1.22) jison@0.4.4 node_modules/jison ├── lex-parser@0.1.0 ├── ebnf-parser@0.1.1 ├── jison-lex@0.2.0 ├── esprima@1.0.3 ├── JSONSelect@0.4.0 ├── nomnom@1.5.2 (colors@0.5.1, underscore@1.1.7) └── escodegen@0.0.21 (estraverse@0.0.4, source-map@0.1.22) grunt@0.4.1 node_modules/grunt ├── dateformat@1.0.2-1.2.3 ├── colors@0.6.0-1 ├── hooker@0.2.3 ├── async@0.1.22 ├── eventemitter2@0.4.11 ├── underscore.string@2.2.0rc ├── iconv-lite@0.2.9 ├── which@1.0.5 ├── coffee-script@1.3.3 ├── lodash@0.9.2 ├── glob@3.1.21 (graceful-fs@1.2.1, inherits@1.0.0) ├── nopt@1.0.10 (abbrev@1.0.4) ├── rimraf@2.0.3 (graceful-fs@1.1.14) ├── minimatch@0.2.12 (sigmund@1.0.0, lru-cache@2.3.0) ├── js-yaml@2.0.5 (esprima@1.0.3, argparse@0.1.15) └── findup-sync@0.1.2 (lodash@1.0.1) grunt-contrib-jshint@0.5.4 node_modules/grunt-contrib-jshint └── jshint@2.0.1 (console-browserify@0.1.6, underscore@1.4.4, shelljs@0.1.4, minimatch@0.2.12, cli@0.4.4-2) grunt-browserify@1.0.2 node_modules/grunt-browserify ├── browserify-shim@2.0.3 (through@2.2.7) └── browserify@2.12.5 (inherits@1.0.0, concat-stream@0.1.1, shell-quote@0.0.1, duplexer@0.0.4, through@2.2.7, optimist@0.3.7, JSONStream@0.4.4, umd@1.1.1, browser-resolve@0.1.1, insert-module-globals@0.2.1, browser-pack@0.8.1, module-deps@0.6.2, syntax-error@0.0.1) browserify@2.14.2 node_modules/browserify ├── inherits@1.0.0 ├── concat-stream@0.1.1 ├── shell-quote@0.0.1 ├── duplexer@0.0.4 ├── through@2.2.7 ├── optimist@0.3.7 (wordwrap@0.0.2) ├── JSONStream@0.4.4 (jsonparse@0.0.5) ├── umd@1.1.1 (through@2.3.4, ruglify@1.0.0, rfile@1.0.0, uglify-js@2.2.5) ├── browser-resolve@0.1.1 (console-browserify@0.1.6, zlib-browserify@0.0.1, vm-browserify@0.0.1, crypto-browserify@0.2.1, resolve@0.3.1, buffer-browserify@0.0.5, http-browserify@0.1.11) ├── insert-module-globals@0.2.1 (process@0.5.1, commondir@0.0.1, lexical-scope@0.0.11) ├── browser-pack@0.8.1 (uglify-js@1.3.4, combine-source-map@0.1.2) ├── module-deps@0.8.0 (through@2.3.4, resolve@0.3.1, detective@2.1.2) └── syntax-error@0.0.1 (esprima@0.9.9) promise-extended@0.0.6 node_modules/promise-extended └── grunt-contrib-jshint@0.3.0 (jshint@1.1.0) date-extended@0.0.4 node_modules/date-extended └── grunt-contrib-jshint@0.4.3 (jshint@1.1.0) array-extended@0.0.5 node_modules/array-extended └── grunt-contrib-jshint@0.4.3 (jshint@1.1.0)
timeout waiting to hear back from safari/6.0
1..131 ok 1 constraint matcher: match: should check equality ok 2 constraint matcher: match: should check inequality ok 3 constraint matcher: match: should check gt operator ok 4 constraint matcher: match: should check lt operator ok 5 constraint matcher: match: should check gte operator ok 6 constraint matcher: match: should check lte operator ok 7 constraint matcher: match: should check lte operator ok 8 constraint matcher: match: should check like operator ok 9 constraint matcher: match: should check notLike operator ok 10 constraint matcher: match: should check and operator ok 11 constraint matcher: match: should check or operator ok 12 constraint matcher: match: should check with member operator ok 13 constraint matcher: match: should check with in operator ok 14 constraint matcher: match: should check with notIn operator ok 15 constraint matcher: match: should allow properties with in ok 16 constraint matcher: match: should check with boolean associativity ok 17 constraint matcher: match: should check with nested properties ok 18 constraint matcher: match: should check with function ok 19 constraint matcher: match: should check with functions and identifier args ok 20 constraint matcher: match: should check with functions in a deep property chain and identifier args ok 21 constraint matcher: match: should check with functions in a deep property chain that returns an object and identifier args ok 22 constraint matcher: match: should have date helpers ok 23 constraint matcher: match: should create have type helpers ok 24 constraint matcher: toConstraints: should create for expressions ok 25 constraint matcher: toConstraints: should create correct pattern depending on scope ok 26 constraint matcher: toJs: should create js equvalent expression ok 27 constraint matcher: getIdentifiers: should create the correct atoms for and expressions ok 28 constraint matcher: equals: should return true when equal ok 29 constraint matcher: equals: should return false when not equal ok 30 nools: flow: should create a flow ok 31 nools: deleteFlow: should delete a flow by name ok 32 nools: deleteFlow: should delete a flow using a Flow instance ok 33 Flow: rule: should create a rule ok 34 Flow: rule: should create a rule with joins properly ok 35 Flow: rule: should create a rules that are dependent on eachother properly ok 36 Flow: simple rule: should call hello world rule ok 37 Flow: not rule: with a single fact: should call when a string that does not equal 'hello' ok 38 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' ok 39 Flow: not rule: with a single fact: should not call when a string that does equal 'hello' and one that does not ok 40 Flow: not rule: with multiple facts: should fire rules in order ok 41 Flow: or rule: should call when a string equals 'hello' ok 42 Flow: or rule: should call when a string equals 'world' ok 43 Flow: or rule: should not call when a string that does equal 'hello' or 'world ok 44 Flow: scope option: should call when a string equals 'hello' ok 45 Flow: scope option: should call when a string equals 'world' ok 46 Flow: scope option: should not call when a string that does equal 'hello' or 'world ok 47 Flow: events: should emit when facts are asserted ok 48 Flow: events: should emit when facts are retracted ok 49 Flow: events: should emit when facts are modified ok 50 Flow: events: should emit when rules are fired ok 51 Flow: matchUntilHalt: should match until halt is called ok 52 Flow: fibonacci: should calculate fibonacci 3 ok 53 Flow: fibonacci: should calculate fibonacci 4 ok 54 Flow: fibonacci: should calculate fibonacci 5 ok 55 Flow: fibonacci: should calculate fibonacci 6 ok 56 Flow: diagnosis: should treat properly ok 57 Flow compiled: not rule: should call when a string that does not equal 'hello' ok 58 Flow compiled: not rule: should not call when a string that does equal 'hello' ok 59 Flow compiled: not rule: should not call when a string that does equal 'hello' and one that does not ok 60 Flow compiled: or rule: should call when a string equals 'hello' ok 61 Flow compiled: scoped functions: should call the scoped function ok 62 Flow compiled: events: should emit when facts are asserted ok 63 Flow compiled: events: should emit when facts are retracted ok 64 Flow compiled: events: should emit when facts are modified ok 65 Flow compiled: events: should emit when rules are fired ok 66 Flow compiled: fibonacci nools dsl: should calculate fibonacci 3 ok 67 Flow compiled: fibonacci nools dsl: should calculate fibonacci 4 ok 68 Flow compiled: fibonacci nools dsl: should calculate fibonacci 5 ok 69 Flow compiled: fibonacci nools dsl: should calculate fibonacci 6 ok 70 Flow compiled: diagnosis using dsl: should treat properly ok 71 nools dsl parser: parsing define: should parse a define statement ok 72 nools dsl parser: parsing define: global: should parse a function call statement ok 73 nools dsl parser: parsing define: global: should parse a member look up ok 74 nools dsl parser: parsing define: global: should parse a strings ok 75 nools dsl parser: parsing define: global: should parse a boolean ok 76 nools dsl parser: parsing define: global: should parse numbers ok 77 nools dsl parser: parsing define: global: should parse a new instantiation ok 78 nools dsl parser: parsing define: should throw an error when the define block is missing a name ok 79 nools dsl parser: parsing define: should throw an error for invalid define blocks ok 80 nools dsl parser: parsing define: should throw an error when the global statement is missing a name ok 81 nools dsl parser: parsing define: should throw an error when the global statement is missing a ; ok 82 nools dsl parser: parsing function: should parse a function statement ok 83 nools dsl parser: parsing function: should throw an error when the function block is missing a name ok 84 nools dsl parser: parsing function: should throw an error for invalid define blocks ok 85 nools dsl parser: parsing rules: should parse rules ok 86 nools dsl parser: parsing rules: should throw an error for invalid rule blocks ok 87 nools dsl parser: parsing rules: should throw an error for a missing name ok 88 nools dsl parser: parsing rules: should parse not conditions ok 89 nools dsl parser: parsing rules: should parse or conditions ok 90 nools dsl parser: parsing rules: should parse when clause with hash and constraints in any order ok 91 nools dsl parser: parsing rules: should parse rules with a string name in double quotes ok 92 nools dsl parser: parsing rules: should parse rules with a string name in single quotes ok 93 nools dsl parser: parsing rules: should parse rules with a string name with inner strings ok 94 nools dsl parser: parsing rules: should throw an error for invalid when clauses ok 95 nools dsl parser: parsing rules: should throw an error for invalid then clauses ok 96 A Parser: should parse valid string expressions ok 97 A Parser: should parse valid string expressions with functions ok 98 A Parser: should parse valid string expressions with property access ok 99 A Parser: should parse valid string expressions with boolean operators ok 100 A Parser: should handle operator associativity properly ok 101 A Parser: should parse arrays ok 102 A Parser: should parse the in operator ok 103 A Parser: should parse the notIn operator ok 104 Rule: createRule: with strings: should create for string ok 105 Rule: createRule: with strings: should create for String ok 106 Rule: createRule: with strings: should create for number ok 107 Rule: createRule: with strings: should create for Number ok 108 Rule: createRule: with strings: should create for date ok 109 Rule: createRule: with strings: should create for Date ok 110 Rule: createRule: with strings: should create for array ok 111 Rule: createRule: with strings: should create for Array ok 112 Rule: createRule: with strings: should create for boolean ok 113 Rule: createRule: with strings: should create for Boolean ok 114 Rule: createRule: with strings: should create for regexp ok 115 Rule: createRule: with strings: should create for Regexp ok 116 Rule: createRule: with strings: should create for object ok 117 Rule: createRule: with strings: should create for Object ok 118 Rule: createRule: with strings: should create for hash ok 119 Rule: createRule: with strings: should create for Hash ok 120 Rule: createRule: with functions: should create for String function ok 121 Rule: createRule: with functions: should create for Number function ok 122 Rule: createRule: with functions: should create for Date function ok 123 Rule: createRule: wi