You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							24 lines
						
					
					
						
							684 B
						
					
					
				
			
		
		
	
	
							24 lines
						
					
					
						
							684 B
						
					
					
				var test = require('tap').test | 
						|
var sigmund = require('../sigmund.js') | 
						|
 | 
						|
 | 
						|
// occasionally there are duplicates | 
						|
// that's an acceptable edge-case.  JSON.stringify and util.inspect | 
						|
// have some collision potential as well, though less, and collision | 
						|
// detection is expensive. | 
						|
var hash = '{abc/def/g{0h1i2{jkl' | 
						|
var obj1 = {a:'b',c:/def/,g:['h','i',{j:'',k:'l'}]} | 
						|
var obj2 = {a:'b',c:'/def/',g:['h','i','{jkl']} | 
						|
 | 
						|
var obj3 = JSON.parse(JSON.stringify(obj1)) | 
						|
obj3.c = /def/ | 
						|
obj3.g[2].cycle = obj3 | 
						|
var cycleHash = '{abc/def/g{0h1i2{jklcycle' | 
						|
 | 
						|
test('basic', function (t) { | 
						|
    t.equal(sigmund(obj1), hash) | 
						|
    t.equal(sigmund(obj2), hash) | 
						|
    t.equal(sigmund(obj3), cycleHash) | 
						|
    t.end() | 
						|
}) | 
						|
 | 
						|
 |