|
1 | 1 | 'use strict';
|
2 |
| -var common = require('../common'); |
| 2 | +require('../common'); |
3 | 3 | var assert = require('assert');
|
| 4 | +var sys = require('sys'); |
| 5 | +var util = require('util'); |
4 | 6 |
|
5 |
| -assert.equal('0', common.inspect(0)); |
6 |
| -assert.equal('1', common.inspect(1)); |
7 |
| -assert.equal('false', common.inspect(false)); |
8 |
| -assert.equal("''", common.inspect('')); |
9 |
| -assert.equal("'hello'", common.inspect('hello')); |
10 |
| -assert.equal('[Function]', common.inspect(function() {})); |
11 |
| -assert.equal('undefined', common.inspect(undefined)); |
12 |
| -assert.equal('null', common.inspect(null)); |
13 |
| -assert.equal('/foo(bar\\n)?/gi', common.inspect(/foo(bar\n)?/gi)); |
14 |
| -assert.equal(new Date('2010-02-14T12:48:40+01:00').toString(), |
15 |
| - common.inspect(new Date('Sun, 14 Feb 2010 11:48:40 GMT'))); |
16 |
| - |
17 |
| -assert.equal("'\\n\\u0001'", common.inspect('\n\u0001')); |
18 |
| - |
19 |
| -assert.equal('[]', common.inspect([])); |
20 |
| -assert.equal('Array {}', common.inspect(Object.create([]))); |
21 |
| -assert.equal('[ 1, 2 ]', common.inspect([1, 2])); |
22 |
| -assert.equal('[ 1, [ 2, 3 ] ]', common.inspect([1, [2, 3]])); |
23 |
| - |
24 |
| -assert.equal('{}', common.inspect({})); |
25 |
| -assert.equal('{ a: 1 }', common.inspect({a: 1})); |
26 |
| -assert.equal('{ a: [Function] }', common.inspect({a: function() {}})); |
27 |
| -assert.equal('{ a: 1, b: 2 }', common.inspect({a: 1, b: 2})); |
28 |
| -assert.equal('{ a: {} }', common.inspect({'a': {}})); |
29 |
| -assert.equal('{ a: { b: 2 } }', common.inspect({'a': {'b': 2}})); |
30 |
| -assert.equal('{ a: { b: { c: [Object] } } }', |
31 |
| - common.inspect({'a': {'b': { 'c': { 'd': 2 }}}})); |
32 |
| -assert.equal('{ a: { b: { c: { d: 2 } } } }', |
33 |
| - common.inspect({'a': {'b': { 'c': { 'd': 2 }}}}, false, null)); |
34 |
| -assert.equal('[ 1, 2, 3, [length]: 3 ]', common.inspect([1, 2, 3], true)); |
35 |
| -assert.equal('{ a: [Object] }', |
36 |
| - common.inspect({'a': {'b': { 'c': 2}}}, false, 0)); |
37 |
| -assert.equal('{ a: { b: [Object] } }', |
38 |
| - common.inspect({'a': {'b': { 'c': 2}}}, false, 1)); |
39 |
| -assert.equal('{ visible: 1 }', |
40 |
| - common.inspect(Object.create({}, |
41 |
| - {visible: {value: 1, enumerable: true}, hidden: {value: 2}})) |
42 |
| -); |
43 |
| - |
44 |
| -// Due to the hash seed randomization it's not deterministic the order that |
45 |
| -// the following ways this hash is displayed. |
46 |
| -// See http://codereview.chromium.org/9124004/ |
47 |
| - |
48 |
| -var out = common.inspect(Object.create({}, |
49 |
| - {visible: {value: 1, enumerable: true}, hidden: {value: 2}}), true); |
50 |
| -if (out !== '{ [hidden]: 2, visible: 1 }' && |
51 |
| - out !== '{ visible: 1, [hidden]: 2 }') { |
52 |
| - assert.ok(false); |
53 |
| -} |
54 |
| - |
55 |
| - |
56 |
| -// Objects without prototype |
57 |
| -var out = common.inspect(Object.create(null, |
58 |
| - { name: {value: 'Tim', enumerable: true}, |
59 |
| - hidden: {value: 'secret'}}), true); |
60 |
| -if (out !== "{ [hidden]: 'secret', name: 'Tim' }" && |
61 |
| - out !== "{ name: 'Tim', [hidden]: 'secret' }") { |
62 |
| - assert(false); |
63 |
| -} |
64 |
| - |
65 |
| - |
66 |
| -assert.equal('{ name: \'Tim\' }', |
67 |
| - common.inspect(Object.create(null, |
68 |
| - {name: {value: 'Tim', enumerable: true}, |
69 |
| - hidden: {value: 'secret'}})) |
70 |
| -); |
71 |
| - |
72 |
| - |
73 |
| -// Dynamic properties |
74 |
| -assert.equal('{ readonly: [Getter] }', |
75 |
| - common.inspect({get readonly() {}})); |
76 |
| - |
77 |
| -assert.equal('{ readwrite: [Getter/Setter] }', |
78 |
| - common.inspect({get readwrite() {}, set readwrite(val) {}})); |
79 |
| - |
80 |
| -assert.equal('{ writeonly: [Setter] }', |
81 |
| - common.inspect({set writeonly(val) {}})); |
82 |
| - |
83 |
| -var value = {}; |
84 |
| -value['a'] = value; |
85 |
| -assert.equal('{ a: [Circular] }', common.inspect(value)); |
86 |
| - |
87 |
| -// Array with dynamic properties |
88 |
| -value = [1, 2, 3]; |
89 |
| -value.__defineGetter__('growingLength', function() { |
90 |
| - this.push(true); return this.length; |
91 |
| -}); |
92 |
| -assert.equal('[ 1, 2, 3, growingLength: [Getter] ]', common.inspect(value)); |
93 |
| - |
94 |
| -// Function with properties |
95 |
| -value = function() {}; |
96 |
| -value.aprop = 42; |
97 |
| -assert.equal('{ [Function] aprop: 42 }', common.inspect(value)); |
98 |
| - |
99 |
| -// Regular expressions with properties |
100 |
| -value = /123/ig; |
101 |
| -value.aprop = 42; |
102 |
| -assert.equal('{ /123/gi aprop: 42 }', common.inspect(value)); |
103 |
| - |
104 |
| -// Dates with properties |
105 |
| -value = new Date('Sun, 14 Feb 2010 11:48:40 GMT'); |
106 |
| -value.aprop = 42; |
107 |
| -assert.equal('{ Sun, 14 Feb 2010 11:48:40 GMT aprop: 42 }', |
108 |
| - common.inspect(value) |
109 |
| -); |
| 7 | +assert.strictEqual(sys, util); |
0 commit comments