inspect.js 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. // Copyright Joyent, Inc. and other Node contributors.
  2. //
  3. // Permission is hereby granted, free of charge, to any person obtaining a
  4. // copy of this software and associated documentation files (the
  5. // "Software"), to deal in the Software without restriction, including
  6. // without limitation the rights to use, copy, modify, merge, publish,
  7. // distribute, sublicense, and/or sell copies of the Software, and to permit
  8. // persons to whom the Software is furnished to do so, subject to the
  9. // following conditions:
  10. //
  11. // The above copyright notice and this permission notice shall be included
  12. // in all copies or substantial portions of the Software.
  13. //
  14. // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
  15. // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
  16. // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
  17. // NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
  18. // DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
  19. // OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
  20. // USE OR OTHER DEALINGS IN THE SOFTWARE.
  21. var assert = require('assert');
  22. var util = require('../../');
  23. suite('inspect');
  24. test('util.inspect - test for sparse array', function () {
  25. var a = ['foo', 'bar', 'baz'];
  26. assert.equal(util.inspect(a), '[ \'foo\', \'bar\', \'baz\' ]');
  27. delete a[1];
  28. assert.equal(util.inspect(a), '[ \'foo\', , \'baz\' ]');
  29. assert.equal(util.inspect(a, true), '[ \'foo\', , \'baz\', [length]: 3 ]');
  30. assert.equal(util.inspect(new Array(5)), '[ , , , , ]');
  31. });
  32. test('util.inspect - exceptions should print the error message, not \'{}\'', function () {
  33. assert.equal(util.inspect(new Error()), '[Error]');
  34. assert.equal(util.inspect(new Error('FAIL')), '[Error: FAIL]');
  35. assert.equal(util.inspect(new TypeError('FAIL')), '[TypeError: FAIL]');
  36. assert.equal(util.inspect(new SyntaxError('FAIL')), '[SyntaxError: FAIL]');
  37. });