Research
Security News
Malicious npm Packages Inject SSH Backdoors via Typosquatted Libraries
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
Asynchronous BDD & continuous integration for node.js
There 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.
Vows is an experiment in making this possible, while adding a minimum of overhead.
var vows = require('vows'),
assert = require('assert');
vows.describe('Deep Thought').addBatch({
'An instance of DeepThought': {
topic: new DeepThought,
'should know the answer to the ultimate question of life': function (deepThought) {
assert.equal (deepThought.question('what is the answer to the universe?'), 42);
}
}
});
Documenation coming soon. For now, have a look at the tests in http://github.com/cloudhead/resourcer to get an idea.
$ npm install vows
vows.describe('A Database library').addBatch({
'A DB object': {
// run this once, and execute the following tests when it completes
topic: function () { return new(DB) },
'set() should store a k/v pair': {
// the inner context gets the return values of the outer contexts
// passed as arguments. Here, `db` is new(DB).
topic: function (db) { return db.set('pulp', 'orange') },
// `res` is the value emitted by the above `db.set`
'and return OK': function (res) {
assert.equal(res, "OK");
},
'and when checked for existence': {
// here, we need to access `db`, from the parent context.
// It's passed as the 2nd argument to `topic`, we discard the first,
// which would have been the above `res`.
topic: function (_, db) { return db.exists('pulp') },
'return true': function (re) {
assert.equal(re, true);
}
}
},
'get()': {
topic: function (db) { return db.get('dream') },
'should return the stored value': function (res) {
assert.equal(res, 'catcher');
}
}
}
}).run();
FAQs
Asynchronous BDD & continuous integration for node.js
The npm package vows receives a total of 46,494 weekly downloads. As such, vows popularity was classified as popular.
We found that vows demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 6 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
Security News
MITRE's 2024 CWE Top 25 highlights critical software vulnerabilities like XSS, SQL Injection, and CSRF, reflecting shifts due to a refined ranking methodology.
Security News
In this segment of the Risky Business podcast, Feross Aboukhadijeh and Patrick Gray discuss the challenges of tracking malware discovered in open source softare.