@@ -377,6 +377,48 @@ describe('Generic', function () {
377
377
378
378
} ) ;
379
379
380
+ describe ( 'Symbols' , function ( ) {
381
+
382
+ it ( 'returns true for same symbols' , function ( ) {
383
+ var symb = Symbol ( 'a' ) ;
384
+ var objectA = { [ symb ] : 'a' } ;
385
+ var objectB = { [ symb ] : 'a' } ;
386
+ assert ( eql ( objectA , objectB ) === true , 'eql(obj, obj)' ) ;
387
+ } ) ;
388
+
389
+ it ( 'returns false for different values' , function ( ) {
390
+ var symb = Symbol ( 'a' ) ;
391
+ var objectA = { [ symb ] : 'a' } ;
392
+ var objectB = { [ symb ] : 'b' } ;
393
+ assert ( eql ( objectA , objectB ) === false , 'eql(obj, obj) === false' ) ;
394
+ } ) ;
395
+
396
+ it ( 'returns false for different symbols' , function ( ) {
397
+ var symb = Symbol ( 'a' ) ;
398
+ var symb2 = Symbol ( 'b' ) ;
399
+ var objectA = { [ symb ] : 'a' } ;
400
+ var objectB = { [ symb2 ] : 'a' } ;
401
+ assert ( eql ( objectA , objectB ) === false , 'eql(obj, obj) === false' ) ;
402
+ } ) ;
403
+
404
+ it ( 'returns true for same nested symbols' , function ( ) {
405
+ var symb = Symbol ( 'a' ) ;
406
+ var symb2 = Symbol ( 'b' ) ;
407
+ var objectA = { [ symb ] : { [ symb2 ] : 'a' } } ;
408
+ var objectB = { [ symb ] : { [ symb2 ] : 'a' } } ;
409
+ assert ( eql ( objectA , objectB ) === true , 'eql(obj, obj)' ) ;
410
+ } ) ;
411
+
412
+ it ( 'returns false for different nested symbols' , function ( ) {
413
+ var symb = Symbol ( 'a' ) ;
414
+ var symb2 = Symbol ( 'b' ) ;
415
+ var objectA = { [ symb ] : { [ symb2 ] : 'a' } } ;
416
+ var objectB = { [ symb ] : { [ symb ] : 'a' } } ;
417
+ assert ( eql ( objectA , objectB ) === false , 'eql(obj, obj) === false' ) ;
418
+ } ) ;
419
+ } ) ;
420
+
421
+
380
422
describe ( 'errors' , function ( ) {
381
423
382
424
it ( 'returns true for same errors' , function ( ) {
0 commit comments