diff --git a/packages/web3/src/contract/contract.ts b/packages/web3/src/contract/contract.ts index 8d01e61ef..5d82049fa 100644 --- a/packages/web3/src/contract/contract.ts +++ b/packages/web3/src/contract/contract.ts @@ -1133,6 +1133,7 @@ export class Contract extends Artifact { bytecode: bytecode, initialAttoAlphAmount: params?.initialAttoAlphAmount, issueTokenAmount: params?.issueTokenAmount, + issueTokenTo: params?.issueTokenTo, initialTokenAmounts: params?.initialTokenAmounts, gasAmount: params?.gasAmount, gasPrice: params?.gasPrice diff --git a/test/token.test.ts b/test/token.test.ts index 8884906b8..7eb76d75e 100644 --- a/test/token.test.ts +++ b/test/token.test.ts @@ -58,6 +58,23 @@ describe('contract', function () { expect(stdInterfaceId).toEqual('0001') }) + it('should send issued token to `issuedTokenTo` address when specified', async () => { + const issueTokenAmount = 10n + const tokenTest = ( + await TokenTest.deploy(signer, { initialFields, issueTokenAmount, issueTokenTo: signer.address }) + ).contractInstance + + const tokenId = tokenTest.contractId + + const contractState = await tokenTest.fetchState() + const contractTokenBalance = contractState.asset.tokens!.find((token) => token.id === tokenId) + expect(contractTokenBalance).toBeUndefined() + + const signerBalance = await web3.getCurrentNodeProvider().addresses.getAddressesAddressBalance(signer.address) + const signerTokenBalance = signerBalance.tokenBalances!.find((token) => token.id === tokenId) + expect(BigInt(signerTokenBalance!.amount)).toEqual(issueTokenAmount) + }) + it('should multicall', async () => { const tokenTest = (await TokenTest.deploy(signer, { initialFields })).contractInstance const result = await tokenTest.multicall({