TestInProd.sol 1.0 KB

1234567891011121314151617181920212223242526272829303132
  1. // SPDX-License-Identifier: MIT
  2. pragma solidity ^0.8.0;
  3. import "../CountersImpl.sol";
  4. import "../../proxy/UUPS/UUPSUpgradeable.sol";
  5. contract UUPSUpgradeableMock is CountersImpl, UUPSUpgradeable {
  6. // Not having any checks in this function is dangerous! Do not do this outside tests!
  7. function _authorizeUpgrade(address) internal virtual override {}
  8. }
  9. contract UUPSUpgradeableUnsafeMock is UUPSUpgradeableMock {
  10. function upgradeTo(address newImplementation) external virtual override {
  11. ERC1967Upgrade._upgradeToAndCall(newImplementation, bytes(""), false);
  12. }
  13. function upgradeToAndCall(address newImplementation, bytes memory data) external payable virtual override {
  14. ERC1967Upgrade._upgradeToAndCall(newImplementation, data, false);
  15. }
  16. }
  17. contract UUPSUpgradeableBrokenMock is UUPSUpgradeableMock {
  18. function upgradeTo(address) external virtual override {
  19. // pass
  20. }
  21. function upgradeToAndCall(address, bytes memory) external payable virtual override {
  22. // pass
  23. }
  24. }