HEX
Server: Apache/2.4.41 (Ubuntu)
System: Linux ip-172-31-42-149 5.15.0-1084-aws #91~20.04.1-Ubuntu SMP Fri May 2 07:00:04 UTC 2025 aarch64
User: ubuntu (1000)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/vhost/disk-apps/pwa.sports-crowd.com/node_modules/jsonparse/test/primitives.js
var test = require('tape');
var Parser = require('../');

var expected = [
  [ [], '' ],
  [ [], 'Hello' ],
  [ [], 'This"is' ],
  [ [], '\r\n\f\t\\/"' ],
  [ [], 'Λάμβδα' ],
  [ [], '\\' ],
  [ [], '/' ],
  [ [], '"' ],
  [ [ 0 ], 0 ],
  [ [ 1 ], 1 ],
  [ [ 2 ], -1 ],
  [ [], [ 0, 1, -1 ] ],
  [ [ 0 ], 1 ],
  [ [ 1 ], 1.1 ],
  [ [ 2 ], -1.1 ],
  [ [ 3 ], -1 ],
  [ [], [ 1, 1.1, -1.1, -1 ] ],
  [ [ 0 ], -1 ],
  [ [], [ -1 ] ],
  [ [ 0 ], -0.1 ],
  [ [], [ -0.1 ] ],
  [ [ 0 ], 6.02e+23 ],
  [ [], [ 6.02e+23 ] ],
  [ [ 0 ], '7161093205057351174' ],
  [ [], [ '7161093205057351174'] ]
];

test('primitives', function (t) {
  t.plan(25);

  var p = new Parser();
  p.onValue = function (value) {
    var keys = this.stack
      .slice(1)
      .map(function (item) { return item.key })
      .concat(this.key !== undefined ? this.key : [])
    ;
    t.deepEqual(
      [ keys, value ],
      expected.shift()
    );
  };

  p.write('"""Hello""This\\"is""\\r\\n\\f\\t\\\\\\/\\""');
  p.write('"\\u039b\\u03ac\\u03bc\\u03b2\\u03b4\\u03b1"');
  p.write('"\\\\"');
  p.write('"\\/"');
  p.write('"\\""');
  p.write('[0,1,-1]');
  p.write('[1.0,1.1,-1.1,-1.0][-1][-0.1]');
  p.write('[6.02e23]');
  p.write('[7161093205057351174]');
});