s = new ShardingTest( "sort1" , 2 , 0 , 2 ) s.adminCommand( { enablesharding : "test" } ); s.adminCommand( { shardcollection : "test.data" , key : { num : 1 } } ); db = s.getDB( "test" ); N = 100 forward = [] backward = [] for ( i=0; i 0 ) s += ","; s += a[i]; } return s; } forward = terse(forward); backward = terse(backward); assert.eq( forward , getSorted( "num" , "num" , 1 ) , "D1" ) assert.eq( backward , getSorted( "num" , "num" , -1 ) , "D2" ) assert.eq( backward , getSorted( "x" , "num" , 1 ) , "D3" ) assert.eq( forward , getSorted( "x" , "num" , -1 ) , "D4" ) assert.eq( backward , getSorted( "x" , "num" , 1 , { num : 1 } ) , "D5" ) assert.eq( forward , getSorted( "x" , "num" , -1 , { num : 1 } ) , "D6" ) s.stop();