{"_id":"vows","_rev":"158-dc506734bebfab64b5449b459ff155da","name":"vows","description":"Asynchronous BDD & continuous integration for node.js","dist-tags":{"latest":"0.8.3","next":"1.0.0-alpha.1"},"versions":{"0.2.5":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://cloudhead.io/vows","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[],"dependencies":{"eyes":">=0.1.0"},"directories":{"lib":"./lib"},"main":"./lib/vows","version":"0.2.5","_id":"vows@0.2.5","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"https://registry.npmjs.org/vows/-/vows-0.2.5.tgz","shasum":"1d60c5ae71efb5db3ee7a8f27354f1396d9826cc","integrity":"sha512-e6INtl9GV+x6/f2iTzSTtd5RRff1kvg9J0/yg954FM0jBfp6O/gWzDFc5jUu45Pq2jbGo6GYORomWpcUksEODA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHFxelo2rrCVbd581OLwoU3O/JNHIqqrIrWyKNAhmAsuAiEA/3XtegnY5VnD/+beljlmDeheCaq+dfyD/sW9M1h3avI="}]}},"0.3.0":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://cloudhead.io/vows","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[],"dependencies":{"eyes":">=0.1.0"},"directories":{"lib":"./lib/vows"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"version":"0.3.0","_id":"vows@0.3.0","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"https://registry.npmjs.org/vows/-/vows-0.3.0.tgz","shasum":"4e4df6fe963235cefd222096f4c2ec3048961fc4","integrity":"sha512-3JDy35kfqidAhxe1DOeG9UMbeStNpdvuciH1+WIzpTHIOlyXK23VnUsz1RTIamWf0KeKRroFX5se3Sewf76mEQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHz5E+mkrjRwssDPbRZbOet6MaCiaEETNkiT+4Uoqq4MAiEA7H3baSNbJhdibIz4vMYKU5zVDzRoSei97K0ezcwIwIs="}]}},"0.3.1":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://cloudhead.io/vows","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[],"dependencies":{"eyes":">=0.1.3"},"directories":{"lib":"./lib/vows"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"version":"0.3.1","_id":"vows@0.3.1","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"https://registry.npmjs.org/vows/-/vows-0.3.1.tgz","shasum":"7edbcca1548910dde657acacbfbb9636f2a24daa","integrity":"sha512-Xep3fuE7gYSk71xRi7yQhwTTlRSB2D9GyPV9/h2W5PBcgGMZ3bsCfqGa8D+Yb3R7apbbc/r3GNMrTiMKgVpdqg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID1SVuKbehgecYerymyeTZV/AEESiosgwFnWGnXkGwxGAiB9kPWx573RKPZdsZvZIUP9+H7VaYAs23O+B7r1dDHVWg=="}]}},"0.3.2":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://cloudhead.io/vows","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[],"dependencies":{"eyes":">=0.1.3"},"directories":{"lib":"./lib/vows"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"version":"0.3.2","_id":"vows@0.3.2","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"https://registry.npmjs.org/vows/-/vows-0.3.2.tgz","shasum":"6d516a034afaa9af43c2d25acc26a7e0e6a45875","integrity":"sha512-CsijctC2q5EFdctPGEmBCkDV6xHHQWmt0nE0n7y+8qIXymG4Kk2bWbBa330lFwashPSW7RW+IUR/nZ2VI3UCSw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDubXclmKez9LZh8wfBLX1jXjief+ks1eGXdby1TKiVdQIhAOwMve/1X6eaYM/qC31oVKKFBTPDXkuyVqOdBYR/nMi2"}]}},"0.3.3":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://cloudhead.io/vows","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[],"dependencies":{"eyes":">=0.1.3"},"directories":{"lib":"./lib/vows"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"version":"0.3.3","_id":"vows@0.3.3","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"https://registry.npmjs.org/vows/-/vows-0.3.3.tgz","shasum":"8f293dd3be8a6b6d57b5d673c410ee6f30d8f38c","integrity":"sha512-3smIlle3niHlEi+SQOgAzNJr/JcsBV4OS+Ry6vKSWRElPISy7eR/KIcCWdwMo7Sziy78x+tzccmCrmsKI/IQgA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIQDUUpkrUmmSpNK5TY4NYT2govXDLQfw54PfHI0u9mW5cQIfCLCG57ddOkS++QqpKyHblj3X0kbCOv98Hs7pxpDYhg=="}]}},"0.3.4":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://cloudhead.io/vows","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[],"dependencies":{"eyes":">=0.1.3"},"directories":{"lib":"./lib/vows"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"version":"0.3.4","_id":"vows@0.3.4","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"https://registry.npmjs.org/vows/-/vows-0.3.4.tgz","shasum":"1fda26e1db1a9f29010d9c1bd0ed0b23700cd6ca","integrity":"sha512-ZJw16Ok8lReMGiGWQQhoQoJhJ4SklZQdgrCqiuw8RIAoRz4MasI8YkUiARuP6gd7gHxvBS0/KSLHz2n/re1KEw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCh1yIT83ZxR3TH4MpFSh+3nyHg9cs7uqvdVJKpOaXkOQIgN4u5zdmMqYSmgRgFpjZySqt0XCVpJ0JRDgjc+lP+piw="}]}},"0.3.5":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://cloudhead.io/vows","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[],"dependencies":{"eyes":">=0.1.6"},"directories":{"lib":"./lib/vows"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"version":"0.3.5","_id":"vows@0.3.5","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"https://registry.npmjs.org/vows/-/vows-0.3.5.tgz","shasum":"32acdfca8b6574522ce3ca57bce4e9cc82ef0fc7","integrity":"sha512-PeYG1Ygq7rtyDYN4UhR1lk7CdKiWJVPKceDCb7LNgqV+hTy9t4U9sD0ockyIRwRCUYH5Y2+F4PGX52OdtSk/uA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHBTYft+LsbDCkcxOA20JIoqccgT9ZrpKkeQ2BlyUeNGAiAbiGdYSqx4qn4I9jDbapEI/c3Q9xvda9x19m6uxy/Ahw=="}]}},"0.4.0":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://cloudhead.io/vows","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[],"dependencies":{"eyes":">=0.1.6"},"directories":{"lib":"./lib/vows"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"version":"0.4.0","_id":"vows@0.4.0","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"https://registry.npmjs.org/vows/-/vows-0.4.0.tgz","shasum":"03983685cc616a0dd5ca64b13e7ce1c243d0f6d5","integrity":"sha512-NpZaGni1xZf+YtNqlU+LHQQfAvaK0Zi0Y99UH2Qg9BS4W6LJM7YI/AuyWY3Dnz61aRZua19DuEWQ4RBFlkccvw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC8AALOQ4vm+KrYdM+hIJaMK15vootmrpijW6WcHu8GTAIgHPlSHSqC0eH8WClvMBLXdyfBXfUk/Z+FK4H0++kaHi8="}]}},"0.4.1":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://cloudhead.io/vows","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[],"dependencies":{"eyes":">=0.1.6"},"directories":{"lib":"./lib/vows"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"version":"0.4.1","_id":"vows@0.4.1","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"https://registry.npmjs.org/vows/-/vows-0.4.1.tgz","shasum":"fc0b2d76d3a810c054e32ca846a631ccf1766c71","integrity":"sha512-YuE57tqG7yB+4KqHeqrBjb/WUQ3YFEoBn7KDld5bBPckaf8NEjYZGxp5qXZk56umxa/i5adMzl2391QdRX/apA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFypx3v0kn+sk+qPQl/KEhoXmyDxq/tChmVsuzeTQ1tZAiEAumeejAjlRAGBPr52owp0VBYH+mRa7Kx/hSEtAD1Vo/g="}]}},"0.4.2":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://cloudhead.io/vows","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[],"dependencies":{"eyes":">=0.1.6"},"directories":{"lib":"./lib/vows"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"version":"0.4.2","_id":"vows@0.4.2","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"https://registry.npmjs.org/vows/-/vows-0.4.2.tgz","shasum":"2ba82c224e661c18682ea47e53f07fcdcdd17286","integrity":"sha512-K8LEhrRGY0tJV4F/nNRgp4wkdsxFiIQYus927u1jQBc6rFauSiZzRrFi+oQyoysKxPa7NkGpP2VL85w8cKeiLw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCv33HOYgyab3Rj/72GaNxwxlIEtAZm5+y6Vq0ujZ5wZwIgfKhAfDKI78b0HBP++umqJcH8gU02Qeqqlpefh4/LjGU="}]}},"0.4.3":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://cloudhead.io/vows","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[],"dependencies":{"eyes":">=0.1.6"},"directories":{"lib":"./lib/vows"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"version":"0.4.3","_id":"vows@0.4.3","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"https://registry.npmjs.org/vows/-/vows-0.4.3.tgz","shasum":"a5f16cdd0fa227d7b7c07a52736191a3ec71b860","integrity":"sha512-k5PzZWLqdttxgrJ13880TNwOEzCUxayyxpDKSHQ4X0RwcIKh/o38+UjYVqjH8lReKvOUFIznBqxnoAwMyFvQXw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDyN4EjAxWM5WH8MTSu4JmtEwBm48h3TL4ao1JIunHplwIgDCvyatlykdFKMhxDtEGEamkuUBdH71F5TamP/hiqhL8="}]}},"0.4.4":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://vowsjs.org","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[],"dependencies":{"eyes":">=0.1.6"},"directories":{"lib":"./lib/vows"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"version":"0.4.4","_id":"vows@0.4.4","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"https://registry.npmjs.org/vows/-/vows-0.4.4.tgz","shasum":"28caeed4795e0f0b0f21502b79f4aed40167f0f1","integrity":"sha512-jFXmDYBU8QYH99XZWnHtcW2N+bZZRmb8XF/Ipam97Y1mDMObKZV877auvy3+yIpWceyp2U/OL++QTNsXRQtjHQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEHguGnvJ2mXPfHsR5vy/I8xDN83iB0zkFJmKjYgVp/lAiBvU6Htotsqmt07mHWQZa14LeViNLSWhJ33hqk30gSvQA=="}]}},"0.4.5":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://vowsjs.org","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[],"dependencies":{"eyes":">=0.1.6"},"directories":{"lib":"./lib/vows"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"version":"0.4.5","_id":"vows@0.4.5","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"https://registry.npmjs.org/vows/-/vows-0.4.5.tgz","shasum":"319aec7759f310b3e9e9af85934225a7ad54a3ce","integrity":"sha512-evy3e/8aKCcTJ56l6RwuXVtCEWJVDkzppIbzrLURIdvYF8qVa0z1A938H2pm9EtpqyTFljJHWJzkJjQNwfqTrg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCKWkDBUUfZnwTAJnuuCpG0CqFatB5knVlUXKrY5/kstwIgTBk+2ny4F1PkaV7uWfGvXdc8Fz5BZQ+Mqsecg3FHoV0="}]}},"0.4.6":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://vowsjs.org","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[],"dependencies":{"eyes":">=0.1.6"},"directories":{"lib":"./lib/vows"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"version":"0.4.6","_id":"vows@0.4.6","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"https://registry.npmjs.org/vows/-/vows-0.4.6.tgz","shasum":"0a652848337ca467376b546800039c57d2a58649","integrity":"sha512-rFfvdGJkzLO07JYoOWcgbA5hE82DV61Uxdg7VgBB+//5gcnxu8XM2UXGPNupe4rYUsjSn4HqN5Oa5ebm4wl24A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICxrpFdUWjd0soHrPz/fXZNzV34Llfz0BNhh9LyfIDdVAiB/L0RuzMPr1Y4SHl5W5GX0lBSJpDvGuiQCYaUseh+fJg=="}]}},"0.5.0":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://vowsjs.org","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[],"dependencies":{"eyes":">=0.1.6"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"directories":{"test":"./test"},"version":"0.5.0","_id":"vows@0.5.0","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"https://registry.npmjs.org/vows/-/vows-0.5.0.tgz","shasum":"bad57feef75c31a4a757a4d15fdf3444dafde79a","integrity":"sha512-YiK1diPeBqW+KyAVg25sje4UlveJs6wqzliHXrETGaBncN+rb9wxoy2tFRZbrIa2MKn0myElHpMzHyFsdn55xg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB/YFXwnHd8Km0VbGE3v2sVzZxRChtmsRFX5EZxhDD5LAiEA9VBtTYvKnKOOf496oMZ0ya6vuFbozpQMBt9R0GoXH4s="}]}},"0.5.5":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://vowsjs.org","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[],"dependencies":{"eyes":">=0.1.6"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"directories":{"test":"./test","lib":"./lib","bin":"./bin"},"version":"0.5.5","engines":{"node":">=0.3.6"},"_id":"vows@0.5.5","_engineSupported":true,"_npmVersion":"0.2.16","_nodeVersion":"v0.3.7","modules":{"vows.js":"lib/vows.js","assert/macros.js":"lib/assert/macros.js","assert/error.js":"lib/assert/error.js","vows/context.js":"lib/vows/context.js","vows/extras.js":"lib/vows/extras.js","vows/suite.js":"lib/vows/suite.js","vows/console.js":"lib/vows/console.js","vows/reporters/json.js":"lib/vows/reporters/json.js","vows/reporters/dot-matrix.js":"lib/vows/reporters/dot-matrix.js","vows/reporters/watch.js":"lib/vows/reporters/watch.js","vows/reporters/silent.js":"lib/vows/reporters/silent.js","vows/reporters/spec.js":"lib/vows/reporters/spec.js"},"files":[""],"_defaultsLoaded":true,"dist":{"shasum":"514dd8dd569a95a4e1d5b3dea575a335c8494d04","tarball":"https://registry.npmjs.org/vows/-/vows-0.5.5.tgz","integrity":"sha512-4D9D/PGpn8ktB2QlexM9ZF6WKyb+0MX9yqdu9uuub9HcGgoQ7TSTD6sl5iRyoBddJaTHOrFxK9vCFxFbqudb9w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCikURN/I86DhKjGIzriKKQB2oFKxbnmasLfbKuWZUg5wIgTSExaxh97DRnmszngA5pgxVh34qqIL7F8/L1HJXrds8="}]}},"0.5.6":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://vowsjs.org","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[],"dependencies":{"eyes":">=0.1.6"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"directories":{"test":"./test","lib":"./lib","bin":"./bin"},"version":"0.5.6","engines":{"node":">=0.2.6"},"_id":"vows@0.5.6","_engineSupported":true,"_npmVersion":"0.2.16","_nodeVersion":"v0.3.7","modules":{"vows.js":"lib/vows.js","assert/macros.js":"lib/assert/macros.js","assert/error.js":"lib/assert/error.js","vows/context.js":"lib/vows/context.js","vows/extras.js":"lib/vows/extras.js","vows/suite.js":"lib/vows/suite.js","vows/console.js":"lib/vows/console.js","vows/reporters/json.js":"lib/vows/reporters/json.js","vows/reporters/dot-matrix.js":"lib/vows/reporters/dot-matrix.js","vows/reporters/watch.js":"lib/vows/reporters/watch.js","vows/reporters/xunit.js":"lib/vows/reporters/xunit.js","vows/reporters/silent.js":"lib/vows/reporters/silent.js","vows/reporters/spec.js":"lib/vows/reporters/spec.js"},"files":[""],"_defaultsLoaded":true,"dist":{"shasum":"9a87debc684b4eb018c864dbad34e32b93623dd4","tarball":"https://registry.npmjs.org/vows/-/vows-0.5.6.tgz","integrity":"sha512-IGLEetjz/nPKHYPlA3LTGMxj6nbfsyZ3CwFTR6hzE6zRLLY7yu5ya4v9ymY7cit9wnogDv6Cj12nU/myCeDwgQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDu+8qel4o6NGvO80fXM+YAk+siebU08QcPP4gAs3E8ywIhAOLMB7ld+Hr2xq7fmgqgRuKl/MufsyqvjQPCpETFANYd"}]}},"0.5.8":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://vowsjs.org","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[],"dependencies":{"eyes":">=0.1.6"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"directories":{"test":"./test","lib":"./lib","bin":"./bin"},"version":"0.5.8","engines":{"node":">=0.2.6"},"_id":"vows@0.5.8","_engineSupported":true,"_npmVersion":"0.2.14-6","_nodeVersion":"v0.4.0","modules":{"vows.js":"lib/vows.js","assert/error.js":"lib/assert/error.js","assert/macros.js":"lib/assert/macros.js","vows/console.js":"lib/vows/console.js","vows/context.js":"lib/vows/context.js","vows/extras.js":"lib/vows/extras.js","vows/suite.js":"lib/vows/suite.js","vows/reporters/dot-matrix.js":"lib/vows/reporters/dot-matrix.js","vows/reporters/json.js":"lib/vows/reporters/json.js","vows/reporters/silent.js":"lib/vows/reporters/silent.js","vows/reporters/spec.js":"lib/vows/reporters/spec.js","vows/reporters/watch.js":"lib/vows/reporters/watch.js","vows/reporters/xunit.js":"lib/vows/reporters/xunit.js"},"files":[""],"_defaultsLoaded":true,"dist":{"shasum":"46f1f6e627a6b0a1997b66933f1c03076cccdfb4","tarball":"https://registry.npmjs.org/vows/-/vows-0.5.8.tgz","integrity":"sha512-VWrvnp3QL8xmZdQrUUjGUsZPxcI6CIBgBJn4A9NSKwlCu1aXBmyOqDuyJnlJNrcm1MS5mn5zM5nK9n+TUuxCRw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDNE8onZIwRogC+yAq5r9oA0K3iKjJppl4nHnrPD/GLxQIgMoAC4JKg0nLyMVVUuJhKv1dNhHYMtxDZMgZLMkcvpKg="}]}},"0.5.9":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://vowsjs.org","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[],"dependencies":{"eyes":">=0.1.6"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"directories":{"test":"./test","bin":"./bin"},"version":"0.5.9","engines":{"node":">=0.2.6"},"devDependencies":{},"_id":"vows@0.5.9","_engineSupported":true,"_npmVersion":"1.0.1rc7","_nodeVersion":"v0.4.5","_defaultsLoaded":true,"dist":{"shasum":"58db374b331c8e57ba453fabb3b290dc3fa55d0c","tarball":"https://registry.npmjs.org/vows/-/vows-0.5.9.tgz","integrity":"sha512-dUVqHd7A/TyI6N+kDD8f9IG04Dhf5PAS101A0GIg3lDxxoLFh8O5/c5M+1DwtUKv8copxjb0jThv09D7QDT6jA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCmHwugDSzU/ACwoIy7vBsPk2AMuD7P2i/8mU8ivLhU7QIgfjbMX8nlwvCOkUVCQWOEPvLUHkQrhgyJmpTSGFHcZ7E="}]}},"0.5.10":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://vowsjs.org","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[{"name":"Charlie Robbins","email":"charlie.robbins@gmail.com"}],"dependencies":{"eyes":">=0.1.6"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"directories":{"test":"./test","bin":"./bin"},"version":"0.5.10","engines":{"node":">=0.2.6"},"_npmJsonOpts":{"file":"/Users/Charlie/.npm/vows/0.5.10/package/package.json","wscript":false,"contributors":false,"serverjs":false},"_id":"vows@0.5.10","devDependencies":{},"_engineSupported":true,"_npmVersion":"1.0.23","_nodeVersion":"v0.4.10","_defaultsLoaded":true,"dist":{"shasum":"f6035211cf3af64c93fb999a8dc2052aa5bfea3b","tarball":"https://registry.npmjs.org/vows/-/vows-0.5.10.tgz","integrity":"sha512-gS93YY/tj+dhMtcvPlXVm464X9r4DVnwSI5ScbII0IMDu5oI3OWGigCwLpnIbVY69R3FYHq2T9WNkpzaPldHAA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC9O0hhOe3UUhB+bp2T3HO00D04/obgN9/b0RBtnSwhxgIhAJYkoe8fZ/Cvjvgifw1iGhnKKOIyv2PrtQ6kimuYPdd1"}]},"scripts":{},"maintainers":[{"name":"cloudhead","email":"self@cloudhead.net"},{"name":"indexzero","email":"charlie.robbins@gmail.com"}]},"0.5.11":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://vowsjs.org","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[{"name":"Charlie Robbins","email":"charlie.robbins@gmail.com"}],"dependencies":{"eyes":">=0.1.6"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"directories":{"test":"./test","bin":"./bin"},"version":"0.5.11","engines":{"node":">=0.2.6"},"_npmJsonOpts":{"file":"/Users/Charlie/.npm/vows/0.5.11/package/package.json","wscript":false,"contributors":false,"serverjs":false},"_id":"vows@0.5.11","devDependencies":{},"_engineSupported":true,"_npmVersion":"1.0.23","_nodeVersion":"v0.4.10","_defaultsLoaded":true,"dist":{"shasum":"408ffe381b33992c1f1fe9f54e189f27cc1bb408","tarball":"https://registry.npmjs.org/vows/-/vows-0.5.11.tgz","integrity":"sha512-yU6mD25s4RQkfR+Ys7mXm0kr5i6NtTzSFwsLkQV/OcGDlcmuLnOGRcB+VBN1HKZJLXF6C4QktQLPWffL0omIbQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDFhwjrGuJO9We7XCqZa3ddAuK+WUeEd+O2iYhXE9wsGQIgB3EhEN/X1JSp5u4xRc127bdfX+Cgs0NHusQbZ4hegl4="}]},"scripts":{},"maintainers":[{"name":"cloudhead","email":"self@cloudhead.net"},{"name":"indexzero","email":"charlie.robbins@gmail.com"}]},"0.5.12":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://vowsjs.org","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[{"name":"Charlie Robbins","email":"charlie.robbins@gmail.com"}],"dependencies":{"eyes":">=0.1.6"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"directories":{"test":"./test","bin":"./bin"},"version":"0.5.12","scripts":{"test":"./bin/vows --spec"},"engines":{"node":">=0.2.6"},"_npmJsonOpts":{"file":"/Users/Charlie/.npm/vows/0.5.12/package/package.json","wscript":false,"contributors":false,"serverjs":false},"_id":"vows@0.5.12","devDependencies":{},"_engineSupported":true,"_npmVersion":"1.0.23","_nodeVersion":"v0.4.11","_defaultsLoaded":true,"dist":{"shasum":"cffdb774cf4cb7345f31acf9c775ed4a6940f519","tarball":"https://registry.npmjs.org/vows/-/vows-0.5.12.tgz","integrity":"sha512-xeYtRP7N1y6R7QWnhbCMKzr4RJy73LVy0/k07Lj5k8fAmTTxiwCL6kb+s8Tai3FO2kEZSSkDz5alYKKxjhYpcQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICTSRagG0jmMluxdeoeAuc2dL8Ff/LcUpdSXAcRINwvoAiADeVqWoSBcmA0p/SXHkiKcBientX9/j1kHGmimxWHdKw=="}]},"maintainers":[{"name":"cloudhead","email":"self@cloudhead.net"},{"name":"indexzero","email":"charlie.robbins@gmail.com"}]},"0.5.13":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://vowsjs.org","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[{"name":"Charlie Robbins","email":"charlie.robbins@gmail.com"}],"dependencies":{"eyes":">=0.1.6"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"directories":{"test":"./test","bin":"./bin"},"version":"0.5.13","scripts":{"test":"./bin/vows --spec"},"engines":{"node":">=0.2.6"},"_npmUser":{"name":"indexzero","email":"charlie.robbins@gmail.com"},"_id":"vows@0.5.13","devDependencies":{},"_engineSupported":true,"_npmVersion":"1.0.103","_nodeVersion":"v0.4.11","_defaultsLoaded":true,"dist":{"shasum":"f6fd9ee9c36d3f20bd6680455cff8090c4b29cde","tarball":"https://registry.npmjs.org/vows/-/vows-0.5.13.tgz","integrity":"sha512-m2+3s/ITbI95b7uzsBnA7oZg7/bJZFb+sKp2TUvomrIQxjtuNOivf/yOxAAyhEAX8gkIogoXfBJRmj9ys8r3gQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID8jhj9NHmSHyQMuWxy6b7XmhzNpPmIKnnGO+vJ6qblPAiEA8+EMoA7EFRkDv64FpxDtGWThm6r6nka2s1pw1iNDLbw="}]},"maintainers":[{"name":"cloudhead","email":"self@cloudhead.net"},{"name":"indexzero","email":"charlie.robbins@gmail.com"}]},"0.6.0":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://vowsjs.org","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[{"name":"Charlie Robbins","email":"charlie.robbins@gmail.com"}],"dependencies":{"eyes":">=0.1.6"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"directories":{"test":"./test","bin":"./bin"},"version":"0.6.0","scripts":{"test":"./bin/vows --spec"},"engines":{"node":">=0.2.6"},"_npmUser":{"name":"indexzero","email":"charlie.robbins@gmail.com"},"_id":"vows@0.6.0","devDependencies":{},"_engineSupported":true,"_npmVersion":"1.0.106","_nodeVersion":"v0.4.12","_defaultsLoaded":true,"dist":{"shasum":"be2f068009d39a37b37af85c29fa86d8573db431","tarball":"https://registry.npmjs.org/vows/-/vows-0.6.0.tgz","integrity":"sha512-yYsoC/egro5Wa6sQTwHI5XU5QmG3HLDxBs+Dj41wJG4C714PNH7d/B5ZGMI0o2Px+z21WKNeD6hqohor713QPQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC/cLAk3vgIivOnLv7Cqzr4uNF6YnIG2xuQNiYQD8mYSQIgfGTOFb5RoKiuZI26u46SSJ/9G3drmsxjWHsEZzNEu6Y="}]},"maintainers":[{"name":"cloudhead","email":"self@cloudhead.net"},{"name":"indexzero","email":"charlie.robbins@gmail.com"}]},"0.6.1":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://vowsjs.org","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[{"name":"Charlie Robbins","email":"charlie.robbins@gmail.com"}],"dependencies":{"eyes":">=0.1.6"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"directories":{"test":"./test","bin":"./bin"},"version":"0.6.1","scripts":{"test":"./bin/vows --spec"},"engines":{"node":">=0.2.6"},"_npmUser":{"name":"indexzero","email":"charlie.robbins@gmail.com"},"_id":"vows@0.6.1","devDependencies":{},"_engineSupported":true,"_npmVersion":"1.0.106","_nodeVersion":"v0.4.12","_defaultsLoaded":true,"dist":{"shasum":"0d3ccec76794b7ac8600b5c700d689864a640a2b","tarball":"https://registry.npmjs.org/vows/-/vows-0.6.1.tgz","integrity":"sha512-6AFdnxEjP8oNtRgrOkUivUqPCRJYmZQLUvVWjNvlXnizOhefyXIqXdtudub96DDrE+XBMoQe6y/aXCOMGMxc6A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCCCt1G6rHrSO1uQlEGt2oYvZtqSun7TnKYb5qthV+TGAIhANYKyhrb3DZ1TlCtrIPUl924iaDsIwPfSFt2eMf/QiGc"}]},"maintainers":[{"name":"cloudhead","email":"self@cloudhead.net"},{"name":"indexzero","email":"charlie.robbins@gmail.com"}]},"0.6.2":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://vowsjs.org","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[{"name":"Charlie Robbins","email":"charlie.robbins@gmail.com"}],"dependencies":{"eyes":">=0.1.6"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"directories":{"test":"./test","bin":"./bin"},"version":"0.6.2","scripts":{"test":"./bin/vows --spec"},"engines":{"node":">=0.2.6"},"_npmUser":{"name":"mmalecki","email":"maciej.malecki@notimplemented.org"},"_id":"vows@0.6.2","devDependencies":{},"optionalDependencies":{},"_engineSupported":true,"_npmVersion":"1.1.0-3","_nodeVersion":"v0.7.6-pre","_defaultsLoaded":true,"dist":{"shasum":"c591930c64e6245266ffe12d2761cf45748df5a5","tarball":"https://registry.npmjs.org/vows/-/vows-0.6.2.tgz","integrity":"sha512-Tf7a1e/5mqQnzzz/xkcIt36/y62chGCYoKhcnjomgi1YD2p9GZOTgTEY3PrWjg5+AxposEi0IxRKIP7Ivr544g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDcO0k4LgezKSmHB6a/sBXd0o4gtd2E1XSECbIfLW+EgAiEAhCjwFQqrJt/9e3XTmI4ZIExdoDTkcI0tApofI1si8NM="}]},"maintainers":[{"name":"cloudhead","email":"self@cloudhead.net"},{"name":"indexzero","email":"charlie.robbins@gmail.com"},{"name":"mmalecki","email":"maciej.malecki@notimplemented.org"}]},"0.6.3":{"name":"vows","description":"Vows ====","url":"http://vowsjs.org","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[{"name":"Charlie Robbins","email":"charlie.robbins@gmail.com"}],"dependencies":{"eyes":">=0.1.6"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"directories":{"test":"./test","bin":"./bin"},"version":"0.6.3","scripts":{"test":"./bin/vows --spec"},"engines":{"node":">=0.2.6"},"_id":"vows@0.6.3","dist":{"shasum":"5b4b2abd99ef1e6b224dc7c58031742f7288b02a","tarball":"https://registry.npmjs.org/vows/-/vows-0.6.3.tgz","integrity":"sha512-aUM3ZOIv0bjZhALIXknO+u6dB0pMYMe6w85pX+BY5PKVA6IM0LJ03QnSI01qO01EjJo4MajLatq7kbuc8dWinw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEw6ReHzPVXbJJ4nISuXwhMV3g+wGQ1pmQ8asJuFFby3AiEAy9mGFDRgD5M7Ck4Pi92V0l22fQ3CZ3z/QAciVOCsjHs="}]},"maintainers":[{"name":"cloudhead","email":"self@cloudhead.net"},{"name":"indexzero","email":"charlie.robbins@gmail.com"},{"name":"mmalecki","email":"maciej.malecki@notimplemented.org"}]},"0.6.4":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://vowsjs.org","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[{"name":"Charlie Robbins","email":"charlie.robbins@gmail.com"}],"dependencies":{"eyes":">=0.1.6","diff":"~1.0.3"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"directories":{"test":"./test","bin":"./bin"},"version":"0.6.4","scripts":{"test":"node ./bin/vows --spec"},"_id":"vows@0.6.4","dist":{"shasum":"ff0ed5d654d04d397cee32dce4384ea88cb4f193","tarball":"https://registry.npmjs.org/vows/-/vows-0.6.4.tgz","integrity":"sha512-CnnxhTuz08RHlAEagUSH6806IMxlOvYK5Nz5CyRGaqk9m2qVsP/0vtNBtU9rUS0TTrx3JYmPtHwIELaf+91t0Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBcdu01DBVjt4KL2HDFIUM3Y5zdU1sztOSw6SW0LxvrfAiEAnSNeop5gewnAhwAkogBFWVX16IL2SEQU0Vel6j/UWVk="}]},"maintainers":[{"name":"cloudhead","email":"self@cloudhead.net"},{"name":"indexzero","email":"charlie.robbins@gmail.com"},{"name":"mmalecki","email":"maciej.malecki@notimplemented.org"},{"name":"jerrysievert","email":"code@legitimatesounding.com"}]},"0.7.0":{"name":"vows","description":"Asynchronous BDD & continuous integration for node.js","url":"http://vowsjs.org","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[{"name":"Charlie Robbins","email":"charlie.robbins@gmail.com"}],"dependencies":{"eyes":">=0.1.6","diff":"~1.0.3"},"main":"./lib/vows","bin":{"vows":"./bin/vows"},"directories":{"test":"./test","bin":"./bin"},"version":"0.7.0","scripts":{"test":"node ./bin/vows --spec"},"_id":"vows@0.7.0","dist":{"shasum":"dd0065f110ba0c0a6d63e844851c3208176d5867","tarball":"https://registry.npmjs.org/vows/-/vows-0.7.0.tgz","integrity":"sha512-f2CmK8X7E9H6jUjvvGttPRoL+dxWBZdWYKqfChoKMklKieSQZ/LxasuCf1dkFDA0kGcLhX5eUaM+MzaFn/tvqg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC0fZ7bY3zUdhh4p57SO0CUnXq5e9bHEIk5kZTxIAkHPAiEAkOnQREsfcIvOICPy+LHgesInp57EmDZ0JNLnnY2CsnQ="}]},"maintainers":[{"name":"cloudhead","email":"self@cloudhead.net"},{"name":"indexzero","email":"charlie.robbins@gmail.com"},{"name":"mmalecki","email":"maciej.malecki@notimplemented.org"},{"name":"jerrysievert","email":"code@legitimatesounding.com"}]},"0.8.0":{"name":"vows","version":"0.8.0","description":"Asynchronous BDD & continuous integration for node.js","url":"http://vowsjs.org","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[{"name":"Charlie Robbins","email":"charlie.robbins@gmail.com"},{"name":"Jerry Sievert","email":"jerry@legitimatesounding.com"}],"dependencies":{"eyes":"~0.1.6","diff":"~1.0.8","glob":"~4.0.6"},"main":"./lib/vows","repository":{"type":"git","url":"https://github.com/cloudhead/vows.git"},"bin":{"vows":"./bin/vows"},"directories":{"test":"test"},"scripts":{"test":"node ./bin/vows --spec"},"bugs":{"url":"https://github.com/cloudhead/vows/issues"},"homepage":"https://github.com/cloudhead/vows","license":"MIT","gitHead":"775db8f727925db633d4fe5760ea1378f6ca8d20","_id":"vows@0.8.0","_shasum":"cd01122a71a4fa853872198182d410de6c3db8a3","_from":".","_npmVersion":"2.1.7","_nodeVersion":"0.10.33","_npmUser":{"name":"indexzero","email":"charlie.robbins@gmail.com"},"maintainers":[{"name":"cloudhead","email":"self@cloudhead.net"},{"name":"indexzero","email":"charlie.robbins@gmail.com"},{"name":"mmalecki","email":"maciej.malecki@notimplemented.org"},{"name":"jerrysievert","email":"code@legitimatesounding.com"}],"dist":{"shasum":"cd01122a71a4fa853872198182d410de6c3db8a3","tarball":"https://registry.npmjs.org/vows/-/vows-0.8.0.tgz","integrity":"sha512-qGOX3ZqSDRWYQ24MtRxUWDiEdinb6kPR9ZPr1HKkbxS/ffpWsVHZ/wm9N7DrNH1Bo0jfc/iThLZLuMH2AamXpw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFl/hWSklUcJjHv8lmKVoxO/IcaNV/oesU6MSFcWzBTGAiEAoFWmBZXyy6xoJfvUooke46Hu3hlryRy68hug2W/2CIA="}]}},"0.8.1":{"name":"vows","version":"0.8.1","description":"Asynchronous BDD & continuous integration for node.js","url":"http://vowsjs.org","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[{"name":"Charlie Robbins","email":"charlie.robbins@gmail.com"},{"name":"Jerry Sievert","email":"jerry@legitimatesounding.com"}],"dependencies":{"eyes":"~0.1.6","diff":"~1.0.8","glob":"~4.0.6"},"main":"./lib/vows","repository":{"type":"git","url":"https://github.com/cloudhead/vows.git"},"bin":{"vows":"./bin/vows"},"directories":{"test":"test"},"scripts":{"test":"node ./bin/vows --spec"},"bugs":{"url":"https://github.com/cloudhead/vows/issues"},"homepage":"https://github.com/cloudhead/vows","license":"MIT","gitHead":"81333f31df9ea7a64896d0f9415077a1bc500869","_id":"vows@0.8.1","_shasum":"e09e988ce594ca05a08d72abcca34e88db559131","_from":".","_npmVersion":"2.1.7","_nodeVersion":"0.10.33","_npmUser":{"name":"indexzero","email":"charlie.robbins@gmail.com"},"maintainers":[{"name":"cloudhead","email":"self@cloudhead.net"},{"name":"indexzero","email":"charlie.robbins@gmail.com"},{"name":"mmalecki","email":"maciej.malecki@notimplemented.org"},{"name":"jerrysievert","email":"code@legitimatesounding.com"}],"dist":{"shasum":"e09e988ce594ca05a08d72abcca34e88db559131","tarball":"https://registry.npmjs.org/vows/-/vows-0.8.1.tgz","integrity":"sha512-+5LxurXUwyqcO8fz/NtEBjcwDWy2PXa3B0T5z4I0XLo3U3hKhqqntm1LLNynFVR8RwGip/p6jkpQmJy3hDANJA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBGoURwepBMBdw2LStdw1I1cq/Vp609nk7GvOXbH8FPdAiAjSfqe1z5BWWF4P4nszbg92DgjyNAFAQpFkDFWGnwQTA=="}]}},"0.9.0-rc1":{"name":"vows","version":"0.9.0-rc1","description":"Asynchronous BDD & continuous integration for node.js","url":"http://vowsjs.org","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[{"name":"Charlie Robbins","email":"charlie.robbins@gmail.com"},{"name":"Jerry Sievert","email":"jerry@legitimatesounding.com"}],"dependencies":{"eyes":"~0.1.6","diff":"~1.2.0","glob":"~4.3.1"},"main":"./lib/vows","repository":{"type":"git","url":"https://github.com/cloudhead/vows.git"},"bin":{"vows":"./bin/vows"},"directories":{"test":"test"},"scripts":{"test":"node ./bin/vows --spec"},"bugs":{"url":"https://github.com/cloudhead/vows/issues"},"homepage":"https://github.com/cloudhead/vows","license":"MIT","gitHead":"595619385d44635fd2f6a3b4b2140538f4a04e75","_id":"vows@0.9.0-rc1","_shasum":"601cb87d69556bf9c7ce8cad36cbc2c98781921f","_from":".","_npmVersion":"2.1.9","_nodeVersion":"0.10.33","_npmUser":{"name":"indexzero","email":"charlie.robbins@gmail.com"},"maintainers":[{"name":"cloudhead","email":"self@cloudhead.net"},{"name":"indexzero","email":"charlie.robbins@gmail.com"},{"name":"mmalecki","email":"maciej.malecki@notimplemented.org"},{"name":"jerrysievert","email":"code@legitimatesounding.com"}],"dist":{"shasum":"601cb87d69556bf9c7ce8cad36cbc2c98781921f","tarball":"https://registry.npmjs.org/vows/-/vows-0.9.0-rc1.tgz","integrity":"sha512-gYs2nMMb3qiUk49brH3ZFIld+yDr0I/XiBgCiCSriSXxW6fh8oHGG1Mj6K0JAhtYGDgXrlu7t7VGwxyZFCURwg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIApGGG86m+2PfdHCaYxShP/a/Q+stDx5Wbr+rAIIixN0AiBSv1QoYJwBgojrFqVN74o1Gp1wyTgS2td5leQ3SuCXyQ=="}]}},"0.9.0-rc2":{"name":"vows","version":"0.9.0-rc2","description":"Asynchronous BDD & continuous integration for node.js","url":"http://vowsjs.org","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[{"name":"Charlie Robbins","email":"charlie.robbins@gmail.com"},{"name":"Jerry Sievert","email":"jerry@legitimatesounding.com"}],"dependencies":{"eyes":"~0.1.6","diff":"~1.2.0","glob":"~4.3.1"},"devDependencies":{"coffee-script":">=1.0.0"},"main":"./lib/vows","repository":{"type":"git","url":"https://github.com/cloudhead/vows.git"},"bin":{"vows":"./bin/vows"},"directories":{"test":"test"},"scripts":{"test":"node ./bin/vows --spec"},"bugs":{"url":"https://github.com/cloudhead/vows/issues"},"homepage":"https://github.com/cloudhead/vows","license":"MIT","gitHead":"fcc7477cfeeadbdc25944a138bfb9310e1d4ac9e","_id":"vows@0.9.0-rc2","_shasum":"8e2bccc46e8db8b5277e09f6818c514e444da631","_from":".","_npmVersion":"2.1.5","_nodeVersion":"0.10.33","_npmUser":{"name":"indexzero","email":"charlie.robbins@gmail.com"},"maintainers":[{"name":"cloudhead","email":"self@cloudhead.net"},{"name":"indexzero","email":"charlie.robbins@gmail.com"},{"name":"mmalecki","email":"maciej.malecki@notimplemented.org"},{"name":"jerrysievert","email":"code@legitimatesounding.com"}],"dist":{"shasum":"8e2bccc46e8db8b5277e09f6818c514e444da631","tarball":"https://registry.npmjs.org/vows/-/vows-0.9.0-rc2.tgz","integrity":"sha512-NoLqWvytHBJ67jm+HBJmmvJ6nM67eYX4hS/IghbGNdZbpo5D38CCC1gDRgbtl7YCOxxDz/MWcShJfTFAk58MmA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC0f2C8qdyPHDAOksQsLOAzCW9Duj90xthMCC0k5RlRwgIhAPuEBxA90hc4q2ggTD6XqqjiwoJWt0P0d0J90uNF5RQk"}]}},"0.9.0-rc3":{"name":"vows","version":"0.9.0-rc3","description":"Asynchronous BDD & continuous integration for node.js","url":"http://vowsjs.org","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[{"name":"Charlie Robbins","email":"charlie.robbins@gmail.com"},{"name":"Jerry Sievert","email":"jerry@legitimatesounding.com"}],"dependencies":{"eyes":"~0.1.6","diff":"~1.2.0","glob":"~4.3.1"},"devDependencies":{"coffee-script":">=1.0.0"},"main":"./lib/vows","repository":{"type":"git","url":"git+https://github.com/cloudhead/vows.git"},"bin":{"vows":"./bin/vows"},"directories":{"test":"test"},"scripts":{"test":"node ./bin/vows --spec"},"bugs":{"url":"https://github.com/cloudhead/vows/issues"},"homepage":"https://github.com/cloudhead/vows","license":"MIT","gitHead":"bdfaaeeb4f841d9f46ef19b71ecb78907fbd673b","_id":"vows@0.9.0-rc3","_shasum":"64eac7919627dc515d9ac8f78a5534e0b732d4b9","_from":".","_npmVersion":"2.14.5","_nodeVersion":"0.12.7","_npmUser":{"name":"indexzero","email":"charlie.robbins@gmail.com"},"maintainers":[{"name":"cloudhead","email":"self@cloudhead.net"},{"name":"indexzero","email":"charlie.robbins@gmail.com"},{"name":"mmalecki","email":"maciej.malecki@notimplemented.org"},{"name":"jerrysievert","email":"code@legitimatesounding.com"}],"dist":{"shasum":"64eac7919627dc515d9ac8f78a5534e0b732d4b9","tarball":"https://registry.npmjs.org/vows/-/vows-0.9.0-rc3.tgz","integrity":"sha512-2P4HJXLbxPNBVAr8VE17Z4ooIyENf8VnfA9SqYsYBk5yxeDe00kVdaMfL6ppcn5L2vJw7RuTaAylCsAwv2lkmQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDiAvKdpf+IiwOtFVyCkh6tGzngvUTP45fFw46bPmUtKAIhAIJeXOuboFwxCe9Vm7bwHGzdWDPaPKCpxBCz4+GxL+9F"}]}},"1.0.0-alpha.1":{"name":"vows","version":"1.0.0-alpha.1","license":"Apache-2.0","description":"testing framework","keywords":["unit test","vows","test"],"author":{"name":"Evan Prodromou","email":"evan@fuzzy.ai"},"main":"lib/index.js","bin":{"vows":"./bin/vows.js"},"scripts":{"lint":"eslint bin/*.js lib/*.js test/*.js","test":"node test/standalone.js && node bin/vows.js test/test-*.* && (check-node-version --node '< 7.10.1' --quiet || node bin/vows.js test/atest-*.js)","test-coverage":"nyc -r lcov npm test"},"directories":{"lib":"./lib"},"repository":{"type":"git","url":"git+https://github.com/vowsjs/vows.git"},"dependencies":{"async":"^2.6.0","coffeescript":"^1.12.7","debug":"^3.1.0","lodash":"^4.17.10","yargs":"^11.1.0"},"devDependencies":{"check-node-version":"^3.2.0","eslint":"^4.19.1","eslint-config-standard":"^11.0.0","eslint-plugin-import":"^2.11.0","eslint-plugin-node":"^6.0.1","eslint-plugin-promise":"^3.7.0","eslint-plugin-standard":"^3.1.0","nyc":"^11.7.1","util-promisify":"^2.1.0"},"engines":{"node":">=4 <=10"},"gitHead":"35ab1fd9560845edc15022cc3a33d49675ff4d41","readme":"# vows\n\nvows is a testing framework for NodeJS.\n\n## License\n\n  - Copyright 2016-2018 fuzzy.ai <mailto:legal@fuzzy.ai>\n  - Copyright 2017 AJ Jordan <mailto:alex@strugee.net>\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n<http://www.apache.org/licenses/LICENSE-2.0>\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n\n## Example\n\n```javascript\n\nvar vows = require('vows');\n\n// vows does not pollute the assert module namespace by default\n\nvar assert = vows.assert;\n\nvows\n  .describe(\"My first vows test\")\n  .addBatch({\n    'When we open a file': {\n      topic: function() {\n        fs.open(\"/tmp/fakefile\", \"w\", this.callback);\n      },\n      'it works': function(err, fd) {\n        assert.ifError(err);\n        assert.isNumber(fd);        \n      },\n      teardown: function(fd) {\n        fs.close(fd, this.callback);\n      }\n      'and we write to the file': {\n        topic: function(fd) {\n          fs.write(fd, \"My dog has fleas\\n\", this.callback);\n        },\n        'it works': function(err, written, buffer) {\n          assert.ifError(err);\n          assert.greater(written, 0);\n          assert.isString(buffer);        \n        }\n      }\n    }\n  })\n  .run();\n\n```\n\n## Introduction\n\n### Requiring\n\nYou require the module like any other module.\n\n### Assert macros\n\nvows provides its own suite of assert macros. To use them, you should use the \n`assert` property from the `vows` module, like so:\n\n```javascript\nvar vows = require('vows');\nvar assert = vows.assert;\n```\n\n### Data structures\n\nThe basic way to use tests is to build really large hierarchical\nobjects with a particular well-defined form.\n\n### Batch\n\nFor `vows`, the core concept is the test `batch`. A batch is an object that\nconsists of the following:\n\n  - A `topic` function that generates values to be tested\n\n  - One or more test functions, which accept the results of the `topic` and\n    use assert macros to validate the results\n\n  - Zero or more sub-batches\n\n  - An optional `teardown` function that cleans up any values generated by the\n    topic\n\nA batch can be either *synchronous* or *asynchronous*. For a synchronous batch,\nthe `topic` function just returns a value, and the test functions measure that\nvalue:\n\n```javascript\nlet batch = {\n  \"We get the answer\":  {\n    topic() {\n      return 6 * 7;\n    },\n    \"it equals 42\": (err, answer) => {\n      assert.ifError(err);\n      assert.equal(answer, 42);\n    }\n  }\n};\n```\n\nFor an asynchronous batch, the topic returns its results through the `callback`\nproperty of `this`. `vows` knows that the callback will be used because the\nresult returned by the `topic` function is `undefined`.\n\n```javascript\nlet batch = {\n  \"When we get the answer asynchronously\":  {\n    topic() {\n      setImmediate(() => {\n        this.callback(null, 6 * 7);\n      });\n      return undefined;\n    },\n    \"it equals 42\": (err, answer) => {\n      assert.ifError(err);\n      assert.equal(answer, 42);\n    }\n  }\n};\n```\n\nAlternately, a topic can return a [Promise](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise).\nvows will resolve the returned Promise and call tests with the same \n`(err, results)` format as with other types of call.\n\n```javascript\nlet batch = {\n  \"When we get the answer\":  {\n    topic() {\n      return new Promise((resolve, reject) => {\n        fs.open(\"/tmp/testfile\", \"w\", (err, fd) => {\n          if (err) {\n            reject(err);\n          } else {\n            resolve(fd);\n          }\n        })\n      });\n    },\n    \"it equals 42\": (err, fd) => {\n      assert.ifError(err);\n      assert.isNumber(fd);\n    }\n  }\n};\n```\n\nNote that all test functions receive at least an `err` argument, and then one or\nmore arguments. Synchronous batches can only have one test argument;\nasynchronous batches can have a lot.\n\nFor backwards compatibility, it's possible to call `this.callback` synchronously\nin your `topic`. vows will simply call `setImmediate` to call the callback\nlater. But that is a tricky and confusing way to write your tests, and you\nshould probably avoid it.\n\nA batch can also have sub-batches. These are just properties of the batch that\nare also batch objects, with their own `topic`, tests, sub-batches, `teardown`,\netc. The argument to the topic will be the results of the parent batch, in\nreverse order up the hierarchy.\n\n```javascript\nlet batch = {\n  \"When we get the answer\":  {\n    topic() {\n      return 6 * 7;\n    },\n    \"it equals 42\": (err, answer) => {\n      assert.ifError(err);\n      assert.isNumber(answer);\n      assert.equal(answer, 42);\n    },\n    \"and we ask a couple of questions\": {\n      topic(answer) {\n        return [\n          \"What is six times seven?\",\n          \"How many roads must a person walk down?\"\n        ];\n      },\n      \"they look plausible\": (err, questions) => {\n        assert.ifError(err);\n        assert.isString(question[0]);\n        assert.equal(question[0][question[0].length - 1], '?');\n        assert.isString(question[1]);\n        assert.equal(question[1][question[1].length - 1], '?');\n      },\n      \"and we compare the answer and the question\": {\n        topic(questions, answer) {\n          setImmediate(() => {\n            this.callback(null, questions[0], questions[1], answer);\n          });\n          return undefined;\n        },\n        \"they match up well\": (err, question0, question1, answer) => {\n          assert.ifError(err);\n          // NB: you need to implement isAnswerTo yourself\n          assert(isAnswerTo(answer, question0));\n          assert(isAnswerTo(answer, question1));\n        }\n      }\n    }\n  }\n};\n```\n\nNote that if a batch's `topic` returns more than one value to its callback, they\nwill be provided *in order* for any sub-batches' `topic`, but hierarchically\n*in reverse order*. This may be a little confusing.\n\nNote also that if an error occurs, in either the topic or the tests, the\nsub-batches will not be run.\n\nThe `teardown` method is called after all the tests and sub-batches have been\nrun. So, the order is something like this:\n\n   - topic\n   - tests\n   - sub-batches (if there are no errors)\n   - teardown\n\nThe `teardown` gets the non-error results of the `topic` as arguments. It's\nuseful for cleaning up things that the `topic` made a mess of.\n\n```javascript\n\nbatch = {\n  'When we open a file': {\n    topic: function() {\n      fs.open(\"/tmp/fakefile\", \"w\", this.callback);\n    },\n    'it works': function(err, fd) {\n      assert.ifError(err);\n      assert.isNumber(fd);\n    },\n    teardown: function(fd) {\n      fs.close(fd, this.callback);\n    }\n  }\n};\n\n```\n\n`teardown` functions can also be synchronous or asynchronous, or they can return\na Promise. However, the results are ignored.\n\n```javascript\nlet batch = {\n  \"When we get the answer\":  {\n    topic() {\n      return new Promise((resolve, reject) => {\n        fs.open(\"/tmp/testfile\", \"w\", (err, fd) => {\n          if (err) {\n            reject(err);\n          } else {\n            resolve(fd);\n          }\n        })\n      });\n    },\n    \"it equals 42\": (err, fd) => {\n      assert.ifError(err);\n      assert.isNumber(fd);\n    },\n    teardown(fd) {\n      return new Promise((resolve, reject) => {\n        if (typeof(fd) != 'number') {\n          reject(new Error(\"File descriptor is not a number\"));\n        } else {\n          fs.close(fd, (err) => {\n            if (err) {\n              reject(err);\n            } else {\n              resolve();\n            }\n          })\n        }\n      });\n    }\n  }\n};\n```\n\nNote that the teardown will be called regardless of whether errors happened or\nnot, so it's a good idea to check the arguments to make sure they're valid.\n\nTeardowns are called as soon as the batch finishes; this is different from how\nvows.js works, but it is better.\n\nIf you're using a version of node that can handle [async/await syntax](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/async_function),\n(>= 7.10.1), you can use async functions in your topics and teardowns, which can\nmake your aysnchronous test code about as lovely and compact as can be.\n\n```javascript\n\nconst fs = require('fs');\nconst util = require('util');\n\n// util.promisify is available in node > 8.0.0\n\nconst open = util.promisify(fs.open);\nconst close = util.promisify(fs.close);\n\nlet batch = {\n  \"When we get the answer\":  {\n    topic: async function () {\n      return await open(\"/tmp/testfile\", \"w\");\n    },\n    \"it equals 42\": (err, fd) => {\n      assert.ifError(err);\n      assert.isNumber(fd);\n    },\n    teardown: async function (fd) {\n      return await close(fd);\n    }\n  }\n};\n```\n\n### Suite\n\nBatches are organized into suites. You create a suite with the `describe` method\nof `vows`.\n\n```javascript\nconst vows = require('vows');\n\nlet suite = vows.describe('A new suite');\n```\n\nYou can then add one or more batches to the suite using the `addBatch` method.\n\n```javascript\nsuite.addBatch(batch1);\nsuite.addBatch(batch2);\nsuite.addBatch(batch3);\n```\n\nFinally, you have two options to actually run the test suite. The first is the\naptly-named `run()` method, which runs all the tests and reports the results to\n`stdout`. You can then run the script through node and you'll run all your\ntests.\n\nAlternately, you can use the `export()` method, passing the current `module` as\nan argument. This will change the `exports` property of the `module` to be the\n`run()` method of the suite. In other words, the module will now export a single\nfunction that runs the suite.\n\nThe `vows` command-line tool can be used to run all your test modules that\nuse `export()`.\n\n```shell\n./node_modules/.bin/vows test/*.js\n```\n\nAll the suite methods are [chainable](https://en.wikipedia.org/wiki/Method_chaining).\nThe typical way to actually use this library, then, is to require vows, use the\n`describe` method to create a suite, use `addBatch` to add one or more batches,\nand then use `export(module)` or more rarely `run()` to run the suite.\n\n```javascript\nconst fs = require('fs');\nconst vows = require('vows');\nlet assert = vows.assert;\n\nvows.describe('Input/output tests')\n  .addBatch({\n    'When we open a file': {\n      topic: function() {\n        fs.open(\"/tmp/fakefile\", \"w\", this.callback);\n      },\n      'it works': function(err, fd) {\n        assert.ifError(err);\n        assert.isNumber(fd);\n      },\n      teardown: function(fd) {\n        fs.close(fd, this.callback);\n      }\n    }\n  })\n  .export(module);\n```\n\n### CoffeeScript\n\n[CoffeeScript](http://coffeescript.org/) is a nice pre-processor for JavaScript.\nIf you write your test scripts in CoffeeScript, it's totally OK to run them with\nthe `vows` command-line tool, as-is.\n\n```shell\n./node_modules/.bin/vows test/*.js test/*.coffee\n```\n\n`vows` uses the CoffeeScript package to load the test modules automatically.\n\n## Debugging\n\n[Test-driven development](https://en.wikipedia.org/wiki/Test-driven_development)\nmeans roughly that write your tests *first*, then write the implementations,\nthen keep running the tests till they work.\n\n`vows` doesn't necessarily do a fantastic job at this, but it's a little\nbetter, and it's definitely a goal. `vows` uses the\n[debug](https://www.npmjs.com/package/debug) library to spoot out debug info to\nstderr at run time. This can be very useful for looking at how the `vows`\nmodule is running, and figuring out where errors are happening.\n\nTo use it, define the `DEBUG` environment variable when running your tests:\n\n```shell\nDEBUG=vows:* ./node_modules/.bin/vows mytest.js\n```\n\nWatch this space for more help in doing TDD with vows.\n\n## Compatibility\n\nThis 1.x version is incompatible with previous 0.x versions of vows in a few\nsmall ways.\n\n  - vows 0.x will check the\n    [arity](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/length)\n    of test methods and call the method different ways based on that arity. With\n    vows 1.x, tests will always take an error argument and then zero or\n    more result arguments. This should help preserve your sanity and make you\n    write more robust tests.\n\n  - vows 0.x will automatically pollute the namespace of the `assert` module.\n    vows 1.x makes you use a property instead.\n\n  - vows 0.x handle all teardowns at the same time, without waiting for\n    sub-batch teardowns to finish. vows 1.x handles teardowns when the batch is\n    finished, so you can do things like deleting created files in your sub-batch\n    teardowns, and deleting their directory in your main batch teardown,\n    and things will just work right.\n\n-   vows 0.x treat a Promise returned from the topic just like any\n    other results. So test functions will receive the Promise as a results\n    argument. vows 1.x will resolve the Promise and pass the results to the\n    test instead. So, if your tests expect to receive a Promise passed\n    synchronously, you should change that.\n\n-   vows 1.x does not pass `this.context` to the topic.\n\n-   vows 1.x does not support many of the undocumented features of vows 0.x,\n    including `vows.prepare()`, `beforeSuite()`, `afterSuite()`, and\n    `vows.options`.\n\n-   vows 1.x only provides a single, default reporter.\n\n-   vows 1.x does not support command-line control of verbosity (`-v` or `-s`).\n\n-   vows 1.x does not support the `-m` or `-r` command-line flags.\n\n-   vows 0.x automatically runs any tests in the `test` or `spec` directory.\n    vows 1.x requires that you specify the tests you want to run.\n\n-   vows 1.x does not support the `-i` (isolate) command-line flag.\n\n## assert\n\nThe exposed `assert` module-ish object has a number of useful methods for doing\ntests.\n\nThe module exposes all the methods of the built-in\n[assert](https://nodejs.org/api/assert.html) module. It also has the following\nutility methods. Each will do a check and if the check fails, will throw a new\n`AssertionError` with either the `message` argument as its message, or a\nstandard message for that macro.\n\n### assert.epsilon(eps, actual, expected, message)\n\nChecks that the number `actual` is within `eps` from `expected`.\n\n### assert.match(actual, expected, message)\n\nChecks that `actual` matches the regular expression `expected`. Note that\n`actual` will be coerced to a string if it is not one already.\n\n`assert.matches` is a synonym.\n\n### assert.isTrue(actual, message)\n\nChecks that `actual` is `true` (not just truthy; `true`).\n\n### assert.isFalse(actual, message)\n\nChecks that `actual` is `false` (not just falsy; `false`).\n\n### assert.isZero(actual, message)\n\nChecks that `actual` is 0.\n\n### assert.isNotZero(actual, message)\n\nChecks that `actual` is not 0.\n\n### assert.greater(actual, expected, message)\n\nChecks that `actual` is strictly greater than `expected`.\n\n### assert.lesser(actual, expected, message)\n\nChecks that `actual` is strictly lesser than `expected`.\n\n### assert.inDelta(actual, expected, delta, message)\n\nChecks that `actual` is less than `delta` away from `expected`. It's a lot\nlike `assert.epsilon()`.\n\n### assert.include(actual, expected, message)\n\nChecks that `actual` contains `expected`. `assert.includes` is a synonym.\n\n### assert.notInclude(actual, expected, message)\n\nChecks that `actual` does not contain `expected`. `assert.notIncludes` is a\nsynonym.\n\n### assert.isEmpty(actual, message)\n\nChecks that `actual` is empty (an empty array or an object with no properties).\n\n### assert.isNotEmpty(actual, message)\n\nChecks that `actual` is not empty.\n\n### assert.isArray(actual, message)\n\nChecks that `actual` is an array.\n\n### assert.isObject(actual, message)\n\nChecks that `actual` is an object.\n\n### assert.isNumber(actual, message)\n\nChecks that `actual` is a number.\n\n### assert.isBoolean(actual, message)\n\nChecks that `actual` is a boolean (`true` or `false`).\n\n### assert.isNaN(actual, message)\n\nChecks that `actual` is `NaN`.\n\n### assert.isNull(actual, message)\n\nChecks that `actual` is `null`.\n\n### assert.isNotNull(actual, message)\n\nChecks that `actual` is not `null`.\n\n### assert.isUndefined(actual, message)\n\nChecks that `actual` is `undefined`.\n\n### assert.isDefined(actual, message)\n\nChecks that `actual` is not `undefined`.\n\n### assert.isString(actual, message)\n\nChecks that `actual` is a string.\n\n### assert.isFunction(actual, message)\n\nChecks that `actual` is a function.\n\n### assert.typeOf(actual, expected, message)\n\nChecks that `actual` is of type `expected`.\n\n### assert.instanceOf(actual, expected, message)\n\nChecks that `actual` is an object and an instance of `expected`.\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/vowsjs/vows/issues"},"homepage":"https://github.com/vowsjs/vows#readme","_id":"vows@1.0.0-alpha.1","_npmVersion":"5.6.0","_nodeVersion":"10.0.0","_npmUser":{"name":"evanp","email":"evan@e14n.com"},"dist":{"integrity":"sha512-vIudJaKypFmzVKrrxjDJXF4T+4SFcNWr9Ip7eRqMibawbgr6LJVAnNdVhxdt4hmGblzxLf8sLdEgPNg/Xglb+w==","shasum":"2fb9f737dfa206ec0fd770a5b7a6c5f4325902c2","tarball":"https://registry.npmjs.org/vows/-/vows-1.0.0-alpha.1.tgz","fileCount":30,"unpackedSize":147738,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa4179CRA9TVsSAnZWagAATIsP/3MPpLXNcUXZyH3YM81m\naUgOMoDm0EL0IuWXK4L5RqcPHx7kBqEoKY3ZgszZR0iYjTXlqsglUFZdFIoD\nfaZ6u0fxs3Ctd/VhhShzv9lyzG9XaDpRiWm/+XRV1q27M68c93lYBsc39PIb\nDHd8DCFJVFVEKIHa/61Y0fhJwK3f8AKU0XnYxUZwYCyubeR3PlKQudpHNX4e\nNly9lN/qy1MJvdmpdr4oIEmfFTdLjeH4QixyrOBJO/vuMYSD4H11VKtW5edb\nMHLrF1n3bsNV58cxRuAvmk1ImY84nZp8mKyoNN8jrmwmsRnZa6xBzri+iYMp\nA7hnSkMmzYXekUbsYRU40kFV68E+yPOHzZzq2sy1/dcCs7Truq1YQAjvg54s\nwFM74JgN8DrFyhne9oVuLJtffAMi+X0qIeuiODkc3trZYu5IWTV1MLkFUsuV\nHGtu52NPMO7bqR/lim9PLVF80tSuJS5UV/xOO1lRvwXroddYjTpv5oRLRXpa\n7e1F+bRurB11ySiEuaiwCz3GfZY6IrJUwcBZ78yheFZOlRfP3vK4EC5JXGvN\nkp9tZHsWQhP7Y83pEIym5B0dWhGfLo2z4uXZReYoWi4IzrdX2ECB9OAtbR5X\nCIgMN/6NhsqOpSuFNb14B6ySLHfrUAgZNepvgyhF5gASAcx5mKoKr35xVlAe\nUeSh\r\n=VRaT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDnWPJsQqgDTsTmE4s7jvFMVFYwu3Tu7A9NlM3kmkUkFAiBmd1KtUjeWl73x1teNHYNJL7REwXxpuMd7MpVbKs8bcg=="}]},"maintainers":[{"email":"self@cloudhead.net","name":"cloudhead"},{"email":"evan@e14n.com","name":"evanp"},{"email":"charlie.robbins@gmail.com","name":"indexzero"},{"email":"code@legitimatesounding.com","name":"jerrysievert"},{"email":"me@mmalecki.com","name":"mmalecki"},{"email":"alex@strugee.net","name":"strugee"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vows_1.0.0-alpha.1_1524850429380_0.21712596859660005"},"_hasShrinkwrap":false},"0.8.2":{"name":"vows","version":"0.8.2","description":"Asynchronous BDD & continuous integration for node.js","url":"http://vowsjs.org","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[{"name":"Charlie Robbins","email":"charlie.robbins@gmail.com"},{"name":"Jerry Sievert","email":"jerry@legitimatesounding.com"}],"dependencies":{"diff":"~1.0.8","eyes":"~0.1.6","glob":"^7.1.2"},"main":"./lib/vows","repository":{"type":"git","url":"git+https://github.com/cloudhead/vows.git"},"bin":{"vows":"./bin/vows"},"directories":{"test":"test"},"scripts":{"test":"node ./bin/vows --spec"},"bugs":{"url":"https://github.com/cloudhead/vows/issues"},"homepage":"https://github.com/cloudhead/vows","license":"MIT","gitHead":"1b8b4e1810cf009c17f37776b920a60fdd2056bf","_id":"vows@0.8.2","_shasum":"691f79ab26ccde80ba726dde9fec8e73d6bcf2eb","_from":".","_npmVersion":"2.15.11","_nodeVersion":"0.12.18","_npmUser":{"name":"evanp","email":"evan@e14n.com"},"dist":{"shasum":"691f79ab26ccde80ba726dde9fec8e73d6bcf2eb","tarball":"https://registry.npmjs.org/vows/-/vows-0.8.2.tgz","fileCount":71,"unpackedSize":601148,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa+zTXCRA9TVsSAnZWagAAbzgP+gNqyuz2xREwt919Cqks\ncI8JKShLZ/1Y+at+8fANjGxBLhV8A7jd2jiZrr3kSws04EKloNuT084JrIoh\nFuC2HHunny/GV1RSVjtkKXJzyz+9/iOYsnE6qG7rHoXCJKidP0v5RA8FFFLH\nZ7UKWn5hj5zHyAtGYHlMtyvXDD2Sr9eAC32kDh6tntEC5kVBMnt+ikBVvBXV\nXncNzfylYC4NiCZyTgbGo5TD8SkLJ4Xka3Na9gHlz16oIFoD0M8CEIQgApk3\ng91eH7N6EgWXgFWaJ+QB7wCVWSbH9FzMJ5U9rY5ZN0YXS99/Zdmqn/sv7P3H\n76/GO5GORoQnaxB2jAcYLyGi5dX/HrsxN6VAJ2ZvyS+PszXwOLg3dCDH2TuL\nPIGUNrzOc++5dL9B/esg8Q2Jb5OPcOI3f8flveRjdBszEKVJtxsf9x2JVDAC\nyq5BaiGUDV1dEheiL1+RZZHdAvYmVe6X3ssvWg+IHJ6ci6MgPhA97ajEKhFe\nzHk88PF8qctNFee4f5RCR/5ZwV5qOIO4GHioWV2+4C7bsQt24PHZfOt6C4Jy\nP2R/RkxT3DQChXbjJN1SVHKxeSUbHCx/AI/T3Dd0SjGcGGCnVDNuyXvg5Au9\n3DDDjRSOM4FZGxm3+QlOhYcRWvPHMbJB12NtYJDOazee66TY8m8Vfo/giiw2\nkfJj\r\n=qr4G\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-ZUFGE1gL9j0ixLGqVPWr0A5uJBDgl02SBtQVgF8f7pke1u2JQnbtOFbAluf/Lx4n6AKDkzAzCbwl3InDIbvwbA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA+vzO/5faKgUL+XxS4rJ1hQTGGIpSaY3uySUCbTaKEoAiAGb8aJD3Q1b0GmEekwGAzMjdr6s1DoK3DavEJ1lBDtRQ=="}]},"maintainers":[{"email":"self@cloudhead.net","name":"cloudhead"},{"email":"evan@e14n.com","name":"evanp"},{"email":"charlie.robbins@gmail.com","name":"indexzero"},{"email":"code@legitimatesounding.com","name":"jerrysievert"},{"email":"me@mmalecki.com","name":"mmalecki"},{"email":"alex@strugee.net","name":"strugee"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vows_0.8.2_1526412499824_0.3716461594403693"},"_hasShrinkwrap":false},"0.8.3":{"name":"vows","version":"0.8.3","description":"Asynchronous BDD & continuous integration for node.js","url":"http://vowsjs.org","keywords":["testing","spec","test","BDD"],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"contributors":[{"name":"Charlie Robbins","email":"charlie.robbins@gmail.com"},{"name":"Jerry Sievert","email":"jerry@legitimatesounding.com"}],"dependencies":{"diff":"^4.0.1","eyes":"~0.1.6","glob":"^7.1.2"},"main":"./lib/vows","repository":{"type":"git","url":"git+https://github.com/cloudhead/vows.git"},"bin":{"vows":"./bin/vows"},"directories":{"test":"test"},"scripts":{"test":"node ./bin/vows --spec"},"bugs":{"url":"https://github.com/cloudhead/vows/issues"},"homepage":"https://github.com/cloudhead/vows","license":"MIT","gitHead":"cbd4b9f670bcd0085f311005e5da436354607a68","_id":"vows@0.8.3","_npmVersion":"6.4.1","_nodeVersion":"8.12.0","_npmUser":{"name":"strugee","email":"alex@strugee.net"},"dist":{"integrity":"sha512-PVIxa/ovXhrw5gA3mz6M+ZF3PHlqX4tutR2p/y9NWPAaFVKcWBE8b2ktfr0opQM/qFmcOVWKjSCJVjnYOvjXhw==","shasum":"36e353c2bca3a93902fc32eb8c5baab2e3a93f10","tarball":"https://registry.npmjs.org/vows/-/vows-0.8.3.tgz","fileCount":44,"unpackedSize":187721,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdpjg5CRA9TVsSAnZWagAAdrAP/2hQ4gpWMJuNzUcGMRHs\niZokH5M52UR8P6UcIGj6kH4WTsELek43D1fwncub6Pmx49cBZRgKrdCqnY8A\nQT/9zTcgyA0EZ3ojFxVnV6ZcX4MHfNxiEmkeoQSloX+rT5W50wl+41Pcx2yg\njgWNXAU/cGS3A4tPGcECfmvqkcdalyz1LhL30vvSi8j3tkRoJl999nD5tqOl\nAIyPygRBoK1mNkX9KhUQ9OtjP7YwqHxgwFRfF/83AWuJT62SjxveSeVcMhL6\nIJ7WM9Tpm3ISB3FC40vZgtw7+yVFJdf80lNw7Des5qIaNhO5wnlMzEN1GKlu\ntgUSFeWqqOhNoipgnWhw6T48EtCMJSwmAzXvdR57IEc7AsWI3WVVxWMVtC0T\nOp0dW9/2Rm8Q+Oy4BC+gz82oeVEGgl3Kpz2VcDsAJ6Cp1CZbLmUeAtoMzhCe\ndqfySCVPjsgMXBRyrXLCJVdIzc50D3yAXv6sz8opqOZ3sXQ8Bzlo1Ys8yp9V\nqx53YpZ3MAmvPoQDFXczNptSjdlxUq6ljJg1/NVaznyaLGvvilCtKWIEx1+e\nONNbU1Cgt/XRVkH7uyuoPsK6ijln20OSifF4gMr5qpJD0PBaKGer+ap1eNY9\nKn1Kuazl+7iNNyBpcGZP4pQYzM9EhEndoeDAG4O880udbcfT1nzYIIlUSDNp\nmsi6\r\n=z4bC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCht7r0etXcRoWTpNCUukEwmbWqmx7lXJFkdAipL+k4TQIhAOLe2v+KQfucdzU8tXPpIP6Vau8LpB4nh9/doWtrGvjS"}]},"maintainers":[{"email":"self@cloudhead.net","name":"cloudhead"},{"email":"evan@e14n.com","name":"evanp"},{"email":"charlie.robbins@gmail.com","name":"indexzero"},{"email":"code@legitimatesounding.com","name":"jerrysievert"},{"email":"me@mmalecki.com","name":"mmalecki"},{"email":"alex@strugee.net","name":"strugee"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vows_0.8.3_1571174457210_0.693912967439662"},"_hasShrinkwrap":false}},"maintainers":[{"email":"self@cloudhead.net","name":"cloudhead"},{"email":"evan@e14n.com","name":"evanp"},{"email":"charlie.robbins@gmail.com","name":"indexzero"},{"email":"code@legitimatesounding.com","name":"jerrysievert"},{"email":"me@mmalecki.com","name":"mmalecki"},{"email":"alex@strugee.net","name":"strugee"}],"author":{"name":"Alexis Sellier","email":"self@cloudhead.net"},"time":{"modified":"2023-07-10T23:19:05.167Z","created":"2010-12-29T11:20:56.476Z","0.2.5":"2010-12-29T11:20:56.476Z","0.3.0":"2010-12-29T11:20:56.476Z","0.3.1":"2010-12-29T11:20:56.476Z","0.3.2":"2010-12-29T11:20:56.476Z","0.3.3":"2010-12-29T11:20:56.476Z","0.3.4":"2010-12-29T11:20:56.476Z","0.3.5":"2010-12-29T11:20:56.476Z","0.4.0":"2010-12-29T11:20:56.476Z","0.4.1":"2010-12-29T11:20:56.476Z","0.4.2":"2010-12-29T11:20:56.476Z","0.4.3":"2010-12-29T11:20:56.476Z","0.4.4":"2010-12-29T11:20:56.476Z","0.4.5":"2010-12-29T11:20:56.476Z","0.4.6":"2010-12-29T11:20:56.476Z","0.5.0":"2010-12-29T11:20:56.476Z","0.5.1":"2010-12-29T11:20:56.476Z","0.5.2":"2010-12-29T11:20:56.476Z","0.5.3":"2010-12-29T11:20:56.476Z","0.5.4":"2011-01-29T20:02:12.944Z","0.5.5":"2011-01-30T22:27:47.981Z","0.5.6":"2011-01-31T18:17:54.498Z","0.5.8":"2011-03-13T03:30:20.700Z","0.5.9":"2011-07-22T16:52:02.463Z","0.5.10":"2011-08-12T04:49:27.553Z","0.5.11":"2011-08-21T03:18:25.757Z","0.5.12":"2011-10-22T06:33:16.562Z","0.5.13":"2011-11-02T19:20:41.125Z","0.6.0":"2011-11-25T05:09:45.963Z","0.6.1":"2011-12-26T21:44:20.491Z","0.6.2":"2012-02-24T14:18:01.390Z","0.6.3":"2012-06-26T22:56:24.669Z","0.6.4":"2012-08-23T05:10:54.266Z","0.7.0":"2012-11-16T18:31:47.386Z","0.8.0":"2014-11-04T05:32:39.447Z","0.8.1":"2014-11-22T04:49:58.358Z","0.9.0-rc1":"2014-12-03T12:26:10.904Z","0.9.0-rc2":"2014-12-31T21:51:29.273Z","0.9.0-rc3":"2015-09-22T21:41:54.084Z","1.0.0-alpha.1":"2018-04-27T17:33:49.449Z","0.8.2":"2018-05-15T19:28:21.664Z","0.8.3":"2019-10-15T21:20:57.360Z"},"users":{"coverslide":true,"JerrySievert":true,"vasc":true,"fgribreau":true,"tigefa":true,"fmm":true,"stonecypher":true,"thebespokepixel":true,"markthethomas":true,"haperlot":true,"octoo":true,"enricllagostera":true,"52u":true,"barenko":true,"aitorllj93":true,"liushoukai":true,"joaocunha":true,"brettv":true,"ugarz":true,"jerrywu":true,"nickeltobias":true,"wujr5":true,"flumpus-dev":true},"keywords":["testing","spec","test","BDD"],"contributors":[{"name":"Charlie Robbins","email":"charlie.robbins@gmail.com"},{"name":"Jerry Sievert","email":"jerry@legitimatesounding.com"}],"readme":"# vows [![Build Status](https://api.travis-ci.org/flatiron/vows.svg)](http://travis-ci.org/flatiron/vows)\n\n> Asynchronous BDD & continuous integration for node.js\n\n#### <http://vowsjs.org> #\n\nintroduction\n------------\nThere are two reasons why we might want asynchronous testing. The first, and obvious reason is that node.js is asynchronous, and therefore our tests need to be. The second reason is to make test suites which target I/O libraries run much faster.\n\n_Vows_ is an experiment in making this possible, while adding a minimum of overhead.\n\nsynopsis\n--------\n\n```js\nvar vows = require('vows'),\n    assert = require('assert');\n\nvows.describe('Deep Thought').addBatch({\n    'An instance of DeepThought': {\n        topic: new DeepThought,\n\n        'should know the answer to the ultimate question of life': function (deepThought) {\n            assert.equal (deepThought.question('what is the answer to the universe?'), 42);\n        }\n    }\n});\n```\n\ncoverage reporting\n------------------\nCode coverage reporting is available if _instrumented_ code is detected.  Currently only _instrumentation_ via [node-jscoverage](https://github.com/visionmedia/node-jscoverage) is supported.  When _instrumented_ code is detected and coverage reporting is enabled using any of the `--cover-plain`, `--cover-html`, or `--cover-json` options a code coverage map is generated.\n\n### downloading and installing [node-jscoverage](https://github.com/visionmedia/node-jscoverage)\n[node-jscoverage](https://github.com/visionmedia/node-jscoverage) is a binary package that needs to be compiled from source:\n\n```sh\n$ git clone https://github.com/visionmedia/node-jscoverage.git\n$ cd node-jscoverage/\n$ ./configure\nchecking for a BSD-compatible install... /usr/bin/install -c\nchecking whether build environment is sane... yes\n[...]\n$ make && sudo make install\n```\n\n### instrumenting with jscoverage\n\n```sh\n$ jscoverage myfile.js myfile-instrumented.js\n```\n\ninstallation\n------------\n\n```sh\n$ npm install vows\n```\n\ndocumentation\n-------------\n\nHead over to <http://vowsjs.org>\n\nrun tests\n-------------\n\n```sh\n$ npm test\n```\n\nauthors\n-------\n\n[Alexis Sellier](https://github.com/cloudhead), [Charlie Robbins](https://github.com/indexzero), [Jerry Sievert](https://github.com/jerrysievert)\n\n*...and many others*\n\n","readmeFilename":"README.md","homepage":"https://github.com/cloudhead/vows","repository":{"type":"git","url":"git+https://github.com/cloudhead/vows.git"},"bugs":{"url":"https://github.com/cloudhead/vows/issues"},"license":"MIT"}