Sha256: f532adb0b07331a7f1613d974cb0d4204a46302f1011eb9da19508c205e96f96

Contents?: true

Size: 795 Bytes

Versions: 38

Compression:

Stored size: 795 Bytes

Contents

var Code = require('code'),
    Lab = require('lab'),
    lab = Lab.script(),
    jph = require('..'); // 'json-parse-helpfulerror'

exports.lab = lab;

lab.test('can parse', function (done) {
  var o = jph.parse('{"foo": "bar"}');

  Code.expect(o.foo).to.equal('bar');
  done();
});

lab.test('helpful error for bad JSON', function (done) {

  var bad = "{'foo': 'bar'}";

  Code.expect(function () { JSON.parse(bad) }).to.throw();

  Code.expect(function () { jph.parse(bad) }).to.throw(SyntaxError, "Unexpected token '\\'' at 1:2\n" + bad + '\n ^');

  done();
});

lab.test('fails if reviver throws', function (done) {
  function badReviver() { throw new ReferenceError('silly'); }

  Code.expect(function () { jph.parse('3', badReviver) }).to.throw(ReferenceError, 'silly');

  done();
});

Version data entries

38 entries across 37 versions & 2 rubygems

Version Path
immosquare-cleaner-0.1.60 node_modules/json-parse-helpfulerror/test/test.js
immosquare-cleaner-0.1.59 node_modules/json-parse-helpfulerror/test/test.js
immosquare-cleaner-0.1.58 node_modules/json-parse-helpfulerror/test/test.js
immosquare-cleaner-0.1.57 node_modules/json-parse-helpfulerror/test/test.js
immosquare-cleaner-0.1.56 node_modules/json-parse-helpfulerror/test/test.js
immosquare-cleaner-0.1.55 node_modules/json-parse-helpfulerror/test/test.js
immosquare-cleaner-0.1.54 node_modules/json-parse-helpfulerror/test/test.js
immosquare-cleaner-0.1.53 node_modules/json-parse-helpfulerror/test/test.js
immosquare-cleaner-0.1.52 node_modules/json-parse-helpfulerror/test/test.js
immosquare-cleaner-0.1.51 node_modules/json-parse-helpfulerror/test/test.js
immosquare-cleaner-0.1.50 node_modules/json-parse-helpfulerror/test/test.js
immosquare-cleaner-0.1.49 node_modules/json-parse-helpfulerror/test/test.js
immosquare-cleaner-0.1.48 node_modules/json-parse-helpfulerror/test/test.js
immosquare-cleaner-0.1.47 node_modules/json-parse-helpfulerror/test/test.js
immosquare-cleaner-0.1.46 node_modules/json-parse-helpfulerror/test/test.js
immosquare-cleaner-0.1.45 node_modules/json-parse-helpfulerror/test/test.js
immosquare-cleaner-0.1.44 node_modules/json-parse-helpfulerror/test/test.js
immosquare-cleaner-0.1.43 node_modules/json-parse-helpfulerror/test/test.js
immosquare-cleaner-0.1.42 node_modules/json-parse-helpfulerror/test/test.js
immosquare-cleaner-0.1.41 node_modules/json-parse-helpfulerror/test/test.js