@@ -377,6 +377,48 @@ describe('Generic', function () {
377377
378378 } ) ;
379379
380+ describe . only ( '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+
380422 describe ( 'errors' , function ( ) {
381423
382424 it ( 'returns true for same errors' , function ( ) {
0 commit comments