diff --git a/src/contracts/extensions/stata-token/StataTokenFactory.sol b/src/contracts/extensions/stata-token/StataTokenFactory.sol index 5741c0b6..caa269d7 100644 --- a/src/contracts/extensions/stata-token/StataTokenFactory.sol +++ b/src/contracts/extensions/stata-token/StataTokenFactory.sol @@ -39,6 +39,7 @@ contract StataTokenFactory is Initializable, IStataTokenFactory { ITransparentProxyFactory transparentProxyFactory, address stataTokenImpl ) { + _disableInitializers(); POOL = pool; INITIAL_OWNER = initialOwner; TRANSPARENT_PROXY_FACTORY = transparentProxyFactory; diff --git a/tests/extensions/stata-token/TestBase.sol b/tests/extensions/stata-token/TestBase.sol index f923c1f1..3d5d54c4 100644 --- a/tests/extensions/stata-token/TestBase.sol +++ b/tests/extensions/stata-token/TestBase.sol @@ -1,6 +1,7 @@ // SPDX-License-Identifier: BUSL-1.1 pragma solidity ^0.8.10; +import {Initializable} from 'openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol'; import {IERC20Metadata, IERC20} from 'openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol'; import {TransparentUpgradeableProxy} from 'openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol'; import {ITransparentProxyFactory} from 'solidity-utils/contracts/transparent-proxy/interfaces/ITransparentProxyFactory.sol'; @@ -57,6 +58,8 @@ abstract contract BaseTest is TestnetProcedures { proxyFactory = ITransparentProxyFactory(report.transparentProxyFactory); factory = StataTokenFactory(report.staticATokenFactoryProxy); + vm.expectRevert(Initializable.InvalidInitialization.selector); + StataTokenFactory(report.staticATokenFactoryImplementation).initialize(); factory.createStataTokens(contracts.poolProxy.getReservesList()); stataTokenV2 = StataTokenV2(factory.getStataToken(underlying));