@@ -688,6 +688,45 @@ describe("Series Functions", () => {
688688 const sortedSf = sf . sortValues ( { ascending : false } ) ;
689689 assert . deepEqual ( sortedSf . values , result ) ;
690690 } ) ;
691+
692+ it ( "Index is retained after sort (ascending=true)" , function ( ) {
693+ let index = [ "apple" , "banana" , "orange" , "grape" ] ;
694+ let value = [ 3 , 6 , 2 , 9 ] ;
695+
696+ let sf = new dfd . Series ( value , { index } ) ;
697+ sf . sortValues ( ) . print ( ) ;
698+ const expectedValues = [ 2 , 3 , 6 , 9 ] ;
699+ const expectedIndex = [ "orange" , "apple" , "banana" , "grape" ] ;
700+ const sortedSf = sf . sortValues ( ) ;
701+ assert . deepEqual ( sortedSf . values , expectedValues ) ;
702+ assert . deepEqual ( sortedSf . index , expectedIndex ) ;
703+ } ) ;
704+ it ( "Index is retained after sort (ascending=false)" , function ( ) {
705+ let index = [ "apple" , "banana" , "orange" , "grape" ] ;
706+ let value = [ 3 , 6 , 2 , 9 ] ;
707+
708+ let sf = new dfd . Series ( value , { index } ) ;
709+ sf . sortValues ( ) . print ( ) ;
710+ const expectedValues = [ 9 , 6 , 3 , 2 ] ;
711+ const expectedIndex = [ "grape" , "banana" , "apple" , "orange" ] ;
712+ const sortedSf = sf . sortValues ( { ascending : false } ) ;
713+ assert . deepEqual ( sortedSf . values , expectedValues ) ;
714+ assert . deepEqual ( sortedSf . index , expectedIndex ) ;
715+ } ) ;
716+
717+ it ( "Index is retained after inplace sort (ascending=false)" , function ( ) {
718+ let index = [ "apple" , "banana" , "orange" , "grape" ] ;
719+ let value = [ 3 , 6 , 2 , 9 ] ;
720+
721+ let sf = new dfd . Series ( value , { index } ) ;
722+ sf . sortValues ( ) . print ( ) ;
723+ const expectedValues = [ 9 , 6 , 3 , 2 ] ;
724+ const expectedIndex = [ "grape" , "banana" , "apple" , "orange" ] ;
725+ sf . sortValues ( { ascending : false , inplace : true } ) ;
726+ assert . deepEqual ( sf . values , expectedValues ) ;
727+ assert . deepEqual ( sf . index , expectedIndex ) ;
728+ } ) ;
729+
691730 } ) ;
692731
693732 describe ( "describe" , function ( ) {
0 commit comments