mirror of openzeppelin-contracts
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
openzeppelin-contracts/test/proxy/transparent/TransparentUpgradeableProxy...

28 lines
989 B

const { ethers } = require('hardhat');
const { loadFixture } = require('@nomicfoundation/hardhat-network-helpers');
const shouldBehaveLikeProxy = require('../Proxy.behaviour');
const shouldBehaveLikeTransparentUpgradeableProxy = require('./TransparentUpgradeableProxy.behaviour');
async function fixture() {
const [owner, other, ...accounts] = await ethers.getSigners();
const implementation = await ethers.deployContract('DummyImplementation');
const createProxy = function (logic, initData, opts = undefined) {
return ethers.deployContract('TransparentUpgradeableProxy', [logic, owner, initData], opts);
};
return { nonContractAddress: owner, owner, other, accounts, implementation, createProxy };
}
describe('TransparentUpgradeableProxy', function () {
beforeEach(async function () {
Object.assign(this, await loadFixture(fixture));
});
shouldBehaveLikeProxy();
// createProxy, owner, otherAccounts
shouldBehaveLikeTransparentUpgradeableProxy();
});