arnaucube
arnaucube/raspberryGPIOhtmlserverPublic Self-hosted repository
raspberryGPIOhtmlserver/node_modules/formidable/test/integration/test-octet-stream.js
node_modules/formidable/test/integration/test-octet-stream.jsRaw
 1var common = require('../common');
 2var formidable = common.formidable;
 3var http = require('http');
 4var fs = require('fs');
 5var path = require('path');
 6var hashish = require('hashish');
 7var assert = require('assert');
 8
 9var testFilePath = path.join(__dirname, '../fixture/file/binaryfile.tar.gz');
10
11var server = http.createServer(function(req, res) {
12    var form = new formidable.IncomingForm();
13
14    form.parse(req, function(err, fields, files) {
15        assert.equal(hashish(files).length, 1);
16        var file = files.file;
17
18        assert.equal(file.size, 301);
19
20        var uploaded = fs.readFileSync(file.path);
21        var original = fs.readFileSync(testFilePath);
22
23        assert.deepEqual(uploaded, original);
24
25        res.end();
26        server.close();
27    });
28});
29
30var port = common.port;
31
32server.listen(port, function(err){
33    assert.equal(err, null);
34
35    var request = http.request({
36        port: port,
37        method: 'POST',
38        headers: {
39            'Content-Type': 'application/octet-stream'
40        }
41    });
42
43    fs.createReadStream(testFilePath).pipe(request);
44});
45