@@ -21,7 +21,7 @@ import { TransactionMapping } from '../../../src/core/utils';
21
21
import { CreateTransactionFromPayload } from '../../../src/infrastructure/transaction' ;
22
22
import { PersistentHarvestingDelegationMessage , UInt64 } from '../../../src/model' ;
23
23
import { Account , Address } from '../../../src/model/account' ;
24
- import { EmptyMessage , MessageMarker , MessageType , PlainMessage } from '../../../src/model/message' ;
24
+ import { EmptyMessage , MessageMarker , MessageType , PlainMessage , RawMessage } from '../../../src/model/message' ;
25
25
import { Mosaic , MosaicId } from '../../../src/model/mosaic' ;
26
26
import { NamespaceId } from '../../../src/model/namespace' ;
27
27
import { NetworkType } from '../../../src/model/network' ;
@@ -133,6 +133,29 @@ describe('TransferTransaction', () => {
133
133
) ;
134
134
} ) ;
135
135
136
+ it ( 'should createComplete an TransferTransaction object with raw message' , ( ) => {
137
+ // Arrange:
138
+ const messageBytes = new Uint8Array ( [ 3 , 2 , 1 , 123 , 0 , 255 ] ) ;
139
+ const messageHex = '0302017B00FF' ;
140
+
141
+ // Act:
142
+ const transferTransaction = TransferTransaction . create (
143
+ Deadline . create ( epochAdjustment ) ,
144
+ testAddress ,
145
+ [ ] ,
146
+ RawMessage . create ( messageBytes ) ,
147
+ TestNetworkType ,
148
+ ) ;
149
+ const transactionPayload = transferTransaction . signWith ( account , generationHash ) . payload ;
150
+ const recreatedTransferTransaction = TransferTransaction . createFromPayload ( transactionPayload ) as TransferTransaction ;
151
+
152
+ // Assert:
153
+ expect ( transferTransaction . message . type ) . to . be . equal ( MessageType . RawMessage ) ;
154
+ expect ( transferTransaction . message . payload ) . to . be . equal ( messageHex ) ;
155
+ expect ( recreatedTransferTransaction . message . type ) . to . be . equal ( MessageType . RawMessage ) ;
156
+ expect ( recreatedTransferTransaction . message . payload ) . to . be . equal ( messageHex ) ;
157
+ } ) ;
158
+
136
159
it ( 'should createComplete an TransferTransaction object and sign it with mosaics' , ( ) => {
137
160
const transferTransaction = TransferTransaction . create (
138
161
Deadline . create ( epochAdjustment ) ,
0 commit comments