@@ -332,4 +332,31 @@ describe('TransferTransaction', () => {
332332 expect ( sorted . mosaics [ 0 ] . id . id . compact ( ) ) . to . be . equal ( 100 ) ;
333333 expect ( sorted . mosaics [ 1 ] . id . id . compact ( ) ) . to . be . equal ( 200 ) ;
334334 } ) ;
335+
336+ it ( 'should sort the Mosaic array - using Hex MosaicId' , ( ) => {
337+ const mosaics = [
338+ new Mosaic ( new MosaicId ( 'D525AD41D95FCF29' ) , UInt64 . fromUint ( 5 ) ) ,
339+ new Mosaic ( new MosaicId ( '77A1969932D987D7' ) , UInt64 . fromUint ( 6 ) ) ,
340+ new Mosaic ( new MosaicId ( '67F2B76F28BD36BA' ) , UInt64 . fromUint ( 10 ) ) ,
341+ ] ;
342+
343+ const transferTransaction = TransferTransaction . create (
344+ Deadline . create ( ) ,
345+ Address . createFromRawAddress ( 'SBILTA367K2LX2FEXG5TFWAS7GEFYAGY7QLFBYKC' ) ,
346+ mosaics ,
347+ PlainMessage . create ( 'NEM' ) ,
348+ NetworkType . MIJIN_TEST ,
349+ ) ;
350+
351+ expect ( transferTransaction . mosaics [ 0 ] . id . toHex ( ) ) . to . be . equal ( 'D525AD41D95FCF29' ) ;
352+ expect ( transferTransaction . mosaics [ 1 ] . id . toHex ( ) ) . to . be . equal ( '77A1969932D987D7' ) ;
353+ expect ( transferTransaction . mosaics [ 2 ] . id . toHex ( ) ) . to . be . equal ( '67F2B76F28BD36BA' ) ;
354+
355+ const signedTransaction = transferTransaction . signWith ( account , generationHash ) ;
356+ const sorted = CreateTransactionFromPayload ( signedTransaction . payload ) as TransferTransaction ;
357+ expect ( sorted . mosaics [ 0 ] . id . toHex ( ) ) . to . be . equal ( '67F2B76F28BD36BA' ) ;
358+ expect ( sorted . mosaics [ 1 ] . id . toHex ( ) ) . to . be . equal ( '77A1969932D987D7' ) ;
359+ expect ( sorted . mosaics [ 2 ] . id . toHex ( ) ) . to . be . equal ( 'D525AD41D95FCF29' ) ;
360+
361+ } ) ;
335362} ) ;
0 commit comments