fix
This commit is contained in:
2
book/node_modules/body/test/index.js
generated
vendored
Normal file
2
book/node_modules/body/test/index.js
generated
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
require('./integration.js');
|
||||
require('./unit.js');
|
105
book/node_modules/body/test/integration.js
generated
vendored
Normal file
105
book/node_modules/body/test/integration.js
generated
vendored
Normal file
@ -0,0 +1,105 @@
|
||||
var testServer = require("test-server")
|
||||
var test = require("tape")
|
||||
var sendJson = require("send-data/json")
|
||||
var after = require("after")
|
||||
|
||||
var body = require("../index")
|
||||
var jsonBody = require("../json")
|
||||
var formBody = require("../form")
|
||||
var anyBody = require("../any")
|
||||
|
||||
testServer(handleRequest, runTests)
|
||||
|
||||
function handleRequest(req, res) {
|
||||
function send(err, body) {
|
||||
if (err) {
|
||||
return sendJson(req, res, err.message)
|
||||
}
|
||||
|
||||
sendJson(req, res, body)
|
||||
}
|
||||
|
||||
if (req.url === "/body") {
|
||||
body(req, res, {}, send)
|
||||
} else if (req.url === "/form") {
|
||||
formBody(req, res, send)
|
||||
} else if (req.url === "/json") {
|
||||
jsonBody(req, {}, send)
|
||||
} else if (req.url === "/any") {
|
||||
anyBody(req, send)
|
||||
}
|
||||
}
|
||||
|
||||
function runTests(request, done) {
|
||||
test("body works", function (t) {
|
||||
t.end = after(2, t.end.bind(t))
|
||||
testBody("/body", request, t)
|
||||
|
||||
request({
|
||||
uri: "/any",
|
||||
body: "foo"
|
||||
}, function (err, res, body) {
|
||||
t.equal(err, null)
|
||||
t.equal(JSON.parse(body), "Could not parse content type header: ")
|
||||
t.end()
|
||||
})
|
||||
})
|
||||
|
||||
test("form works", function (t) {
|
||||
t.end = after(2, t.end.bind(t))
|
||||
testFormBody("/form", request, t)
|
||||
testFormBody("/any", request, t)
|
||||
})
|
||||
|
||||
test("json works", function (t) {
|
||||
t.end = after(2, t.end.bind(t))
|
||||
testJsonBody("/json", request, t)
|
||||
testJsonBody("/any", request, t)
|
||||
})
|
||||
|
||||
.on("end", done)
|
||||
}
|
||||
|
||||
function testBody(uri, request, t) {
|
||||
request({
|
||||
uri: uri,
|
||||
body: "foo"
|
||||
}, function (err, res, body) {
|
||||
t.equal(err, null, "error is not null")
|
||||
|
||||
console.log("body", body, JSON.parse(body))
|
||||
t.equal(JSON.parse(body), "foo", "body is incorrect")
|
||||
|
||||
t.end()
|
||||
})
|
||||
}
|
||||
|
||||
function testFormBody(uri, request, t) {
|
||||
request({
|
||||
uri: uri,
|
||||
form: {
|
||||
foo: "bar"
|
||||
}
|
||||
}, function (err, res, body) {
|
||||
t.equal(err, null, "error is not null")
|
||||
|
||||
t.equal(JSON.parse(body).foo, "bar", "body is incorrect")
|
||||
|
||||
t.end()
|
||||
})
|
||||
}
|
||||
|
||||
function testJsonBody(uri, request, t) {
|
||||
request({
|
||||
uri: uri,
|
||||
json: {
|
||||
foo: "bar"
|
||||
}
|
||||
}, function (err, res, body) {
|
||||
t.equal(err, null, "error is not null")
|
||||
|
||||
t.equal(body.foo, "bar", "body is incorrect")
|
||||
|
||||
t.end()
|
||||
})
|
||||
}
|
60
book/node_modules/body/test/unit.js
generated
vendored
Normal file
60
book/node_modules/body/test/unit.js
generated
vendored
Normal file
@ -0,0 +1,60 @@
|
||||
var after = require('after');
|
||||
var body = require('../index.js');
|
||||
var hammock = require('hammock');
|
||||
var test = require('tape');
|
||||
|
||||
test('caching works', function t(assert) {
|
||||
var request = hammock.Request({
|
||||
method: 'GET',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
url: '/somewhere'
|
||||
});
|
||||
var response = hammock.Response();
|
||||
|
||||
var done = after(2, assert.end.bind(assert));
|
||||
|
||||
body(request, response, { cache: true }, function onBody(err, body) {
|
||||
assert.equal(body, 'thisbody', 'raw body has been set');
|
||||
assert.pass('body is parsed');
|
||||
done();
|
||||
});
|
||||
|
||||
request.on('end', function() {
|
||||
body(request, response, { cache: true }, function onBody(err, body) {
|
||||
assert.equal(body, 'thisbody', 'cached body is provided');
|
||||
assert.pass('body is parsed');
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
request.end('thisbody');
|
||||
});
|
||||
|
||||
test('parallel caching works', function t(assert) {
|
||||
var request = hammock.Request({
|
||||
method: 'GET',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
url: '/somewhere'
|
||||
});
|
||||
request.end('thisbody');
|
||||
var response = hammock.Response();
|
||||
|
||||
var done = after(5, function() {
|
||||
process.nextTick(function() {
|
||||
assert.equal(request.listeners('rawBody').length, 0, 'rawBody listeners cleared');
|
||||
assert.end();
|
||||
});
|
||||
});
|
||||
|
||||
for (var i = 0; i < 5; ++i) {
|
||||
body(request, response, { cache: true }, function onBody(err, body) {
|
||||
assert.equal(body, 'thisbody', 'raw body has been set');
|
||||
assert.pass('body is parsed');
|
||||
done();
|
||||
});
|
||||
}
|
||||
});
|
Reference in New Issue
Block a user