diff --git a/src/DN404.sol b/src/DN404.sol index 6dea4db..6f05367 100644 --- a/src/DN404.sol +++ b/src/DN404.sol @@ -259,6 +259,7 @@ abstract contract DN404 { if (addressAlias == 0) { addressAlias = ++$.numAliases; toAddressData.addressAlias = addressAlias; + $.aliasToAddress[addressAlias] = to; } return addressAlias; } diff --git a/test/DN404.t.sol b/test/DN404.t.sol index 27fc6a0..08826e9 100644 --- a/test/DN404.t.sol +++ b/test/DN404.t.sol @@ -35,5 +35,15 @@ contract DN404Test is SoladyTest { } } + function testMintOnTransfer(uint32 totalNFTSupply, address initialSupplyOwner, address recipient) public { + vm.assume(totalNFTSupply != 0 && uint256(totalNFTSupply) + 1 <= type(uint32).max && initialSupplyOwner != address(0)); + vm.assume(initialSupplyOwner != recipient && recipient != address(0)); + dn.initializeDN404(totalNFTSupply, initialSupplyOwner); + + vm.startPrank(initialSupplyOwner); + dn.transfer(recipient, 1e18); + + assertEq(dn.ownerOf(1), recipient); + } }