Sha256: 47f9763e68b95be85159fff85f3fa540c767f9fb2dc102e939d8e89490ce66c3

Contents?: true

Size: 1.43 KB

Versions: 7

Compression:

Stored size: 1.43 KB

Contents

var common = require('../common');
var multipartParser = require(common.lib + '/multipart_parser'),
    MultipartParser = multipartParser.MultipartParser,
    events = require('events'),
    Buffer = require('buffer').Buffer,
    parser;

function test(test) {
  parser = new MultipartParser();
  test();
}

test(function constructor() {
  assert.equal(parser.boundary, null);
  assert.equal(parser.state, 0);
  assert.equal(parser.flags, 0);
  assert.equal(parser.boundaryChars, null);
  assert.equal(parser.index, null);
  assert.equal(parser.lookbehind, null);
  assert.equal(parser.constructor.name, 'MultipartParser');
});

test(function initWithBoundary() {
  var boundary = 'abc';
  parser.initWithBoundary(boundary);
  assert.deepEqual(Array.prototype.slice.call(parser.boundary), [13, 10, 45, 45, 97, 98, 99]);
  assert.equal(parser.state, multipartParser.START);

  assert.deepEqual(parser.boundaryChars, {10: true, 13: true, 45: true, 97: true, 98: true, 99: true});
});

test(function parserError() {
  var boundary = 'abc',
      buffer = new Buffer(5);

  parser.initWithBoundary(boundary);
  buffer.write('--ad', 'ascii', 0);
  assert.equal(parser.write(buffer), 3);
});

test(function end() {
  (function testError() {
    assert.equal(parser.end().message, 'MultipartParser.end(): stream ended unexpectedly');
  })();

  (function testRegular() {
    parser.state = multipartParser.END;
    assert.strictEqual(parser.end(), undefined);
  })();
});

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
vulcan-0.3.0 server/node_modules/connect-form/node_modules/formidable/test/legacy/simple/test-multipart-parser.js
vulcan-0.1.3 server/node_modules/connect-form/node_modules/formidable/test/legacy/simple/test-multipart-parser.js
vulcan-0.1.2 server/node_modules/connect-form/node_modules/formidable/test/legacy/simple/test-multipart-parser.js
vulcan-0.1.1 server/node_modules/connect-form/node_modules/formidable/test/legacy/simple/test-multipart-parser.js
vulcan-0.1.0 server/node_modules/connect-form/node_modules/formidable/test/legacy/simple/test-multipart-parser.js
vulcan-0.0.3 server/node_modules/connect-form/node_modules/formidable/test/legacy/simple/test-multipart-parser.js
vulcan-0.0.2 server/node_modules/connect-form/node_modules/formidable/test/legacy/simple/test-multipart-parser.js