@gooddollar/goodprotocol 2.0.3-beta.0 → 2.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (177) hide show
  1. package/artifacts/abis/Faucet.min.json +1 -1
  2. package/artifacts/abis/FuseFaucetV2.min.json +1 -1
  3. package/artifacts/abis/GoodDollarMintBurnWrapper.min.json +1 -1
  4. package/artifacts/contracts/DAOStackInterfaces.sol/Avatar.dbg.json +1 -1
  5. package/artifacts/contracts/DAOStackInterfaces.sol/Controller.dbg.json +1 -1
  6. package/artifacts/contracts/DAOStackInterfaces.sol/GlobalConstraintInterface.dbg.json +1 -1
  7. package/artifacts/contracts/DAOStackInterfaces.sol/IntVoteInterface.dbg.json +1 -1
  8. package/artifacts/contracts/DAOStackInterfaces.sol/ReputationInterface.dbg.json +1 -1
  9. package/artifacts/contracts/DAOStackInterfaces.sol/SchemeRegistrar.dbg.json +1 -1
  10. package/artifacts/contracts/Interfaces.sol/AggregatorV3Interface.dbg.json +1 -1
  11. package/artifacts/contracts/Interfaces.sol/ERC20.dbg.json +1 -1
  12. package/artifacts/contracts/Interfaces.sol/IAaveIncentivesController.dbg.json +1 -1
  13. package/artifacts/contracts/Interfaces.sol/IAdminWallet.dbg.json +1 -1
  14. package/artifacts/contracts/Interfaces.sol/IDonationStaking.dbg.json +1 -1
  15. package/artifacts/contracts/Interfaces.sol/IERC2917.dbg.json +1 -1
  16. package/artifacts/contracts/Interfaces.sol/IFirstClaimPool.dbg.json +1 -1
  17. package/artifacts/contracts/Interfaces.sol/IGoodDollar.dbg.json +1 -1
  18. package/artifacts/contracts/Interfaces.sol/IGoodStaking.dbg.json +1 -1
  19. package/artifacts/contracts/Interfaces.sol/IHasRouter.dbg.json +1 -1
  20. package/artifacts/contracts/Interfaces.sol/IIdentity.dbg.json +1 -1
  21. package/artifacts/contracts/Interfaces.sol/IIdentityV2.dbg.json +1 -1
  22. package/artifacts/contracts/Interfaces.sol/ILendingPool.dbg.json +1 -1
  23. package/artifacts/contracts/Interfaces.sol/IMultichainRouter.dbg.json +1 -1
  24. package/artifacts/contracts/Interfaces.sol/INameService.dbg.json +1 -1
  25. package/artifacts/contracts/Interfaces.sol/IUBIScheme.dbg.json +1 -1
  26. package/artifacts/contracts/Interfaces.sol/ProxyAdmin.dbg.json +1 -1
  27. package/artifacts/contracts/Interfaces.sol/Reserve.dbg.json +1 -1
  28. package/artifacts/contracts/Interfaces.sol/Staking.dbg.json +1 -1
  29. package/artifacts/contracts/Interfaces.sol/Uniswap.dbg.json +1 -1
  30. package/artifacts/contracts/Interfaces.sol/UniswapFactory.dbg.json +1 -1
  31. package/artifacts/contracts/Interfaces.sol/UniswapPair.dbg.json +1 -1
  32. package/artifacts/contracts/Interfaces.sol/cERC20.dbg.json +1 -1
  33. package/artifacts/contracts/fuseFaucet/Faucet.sol/Faucet.dbg.json +1 -1
  34. package/artifacts/contracts/fuseFaucet/Faucet.sol/Faucet.json +43 -17
  35. package/artifacts/contracts/fuseFaucet/FuseFaucet.sol/FuseFaucet.dbg.json +1 -1
  36. package/artifacts/contracts/fuseFaucet/FuseFaucetV2.sol/FuseFaucetV2.dbg.json +1 -1
  37. package/artifacts/contracts/fuseFaucet/FuseFaucetV2.sol/FuseFaucetV2.json +37 -17
  38. package/artifacts/contracts/governance/ClaimersDistribution.sol/ClaimersDistribution.dbg.json +1 -1
  39. package/artifacts/contracts/governance/CompoundVotingMachine.sol/CompoundVotingMachine.dbg.json +1 -1
  40. package/artifacts/contracts/governance/GReputation.sol/GReputation.dbg.json +1 -1
  41. package/artifacts/contracts/governance/GoodDollarStaking.sol/GoodDollarStaking.dbg.json +1 -1
  42. package/artifacts/contracts/governance/GoodDollarStaking.sol/IGovernanceStaking.dbg.json +1 -1
  43. package/artifacts/contracts/governance/GoodDollarStaking.sol/IStakingUpgrade.dbg.json +1 -1
  44. package/artifacts/contracts/governance/GoodDollarStaking.sol/RewardsMinter.dbg.json +1 -1
  45. package/artifacts/contracts/governance/GovernanceStaking.sol/GovernanceStaking.dbg.json +1 -1
  46. package/artifacts/contracts/governance/MultiBaseGovernanceShareField.sol/MultiBaseGovernanceShareField.dbg.json +1 -1
  47. package/artifacts/contracts/governance/Reputation.sol/Reputation.dbg.json +1 -1
  48. package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.dbg.json +1 -1
  49. package/artifacts/contracts/identity/IdentityV2.sol/IdentityV2.dbg.json +1 -1
  50. package/artifacts/contracts/invite/InvitesFuseV2.sol/InvitesFuseV2.dbg.json +1 -1
  51. package/artifacts/contracts/invite/InvitesV1.sol/InvitesV1.dbg.json +1 -1
  52. package/artifacts/contracts/invite/InvitesV2.sol/InvitesV2.dbg.json +1 -1
  53. package/artifacts/contracts/mocks/AaveMock.sol/AaveMock.dbg.json +1 -1
  54. package/artifacts/contracts/mocks/DAIMock.sol/DAIMock.dbg.json +1 -1
  55. package/artifacts/contracts/mocks/DecimalsMock.sol/DecimalsMock.dbg.json +1 -1
  56. package/artifacts/contracts/mocks/DistributionBridgeMock.sol/DistributionBridgeMock.dbg.json +1 -1
  57. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTest.dbg.json +1 -1
  58. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTestHelper.dbg.json +1 -1
  59. package/artifacts/contracts/mocks/FeesFormularMock.sol/FeesFormulaMock.dbg.json +1 -1
  60. package/artifacts/contracts/mocks/GoodCompoundStakingTest.sol/GoodCompoundStakingTest.dbg.json +1 -1
  61. package/artifacts/contracts/mocks/GoodDollarStakingMock.sol/GoodDollarStakingMock.dbg.json +1 -1
  62. package/artifacts/contracts/mocks/GoodFundManagerTest.sol/GoodFundManagerTest.dbg.json +1 -1
  63. package/artifacts/contracts/mocks/IdentityMock.sol/IdentityMock.dbg.json +1 -1
  64. package/artifacts/contracts/mocks/IncentiveControllerMock.sol/IncentiveControllerMock.dbg.json +1 -1
  65. package/artifacts/contracts/mocks/LendingPoolMock.sol/LendingPoolMock.dbg.json +1 -1
  66. package/artifacts/contracts/mocks/MultichainRouterMock.sol/IWrapper.dbg.json +1 -1
  67. package/artifacts/contracts/mocks/MultichainRouterMock.sol/MultichainRouterMock.dbg.json +1 -1
  68. package/artifacts/contracts/mocks/OverMintTester.sol/IGoodDollarStakingTest.dbg.json +1 -1
  69. package/artifacts/contracts/mocks/OverMintTester.sol/OverMintTester.dbg.json +1 -1
  70. package/artifacts/contracts/mocks/OverMintTesterRegularStake.sol/OverMintTesterRegularStake.dbg.json +1 -1
  71. package/artifacts/contracts/mocks/SixteenDecimalsTokenMock.sol/SixteenDecimalsTokenMock.dbg.json +1 -1
  72. package/artifacts/contracts/mocks/StakingMockFixedAPY.sol/StakingMockFixedAPY.dbg.json +1 -1
  73. package/artifacts/contracts/mocks/SwapHelperTest.sol/SwapHelperTest.dbg.json +1 -1
  74. package/artifacts/contracts/mocks/TwentyDecimalsTokenMock.sol/TwentyDecimalsTokenMock.dbg.json +1 -1
  75. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock.dbg.json +1 -1
  76. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock2.dbg.json +1 -1
  77. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock3.dbg.json +1 -1
  78. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock4.dbg.json +1 -1
  79. package/artifacts/contracts/mocks/UsdcMock.sol/USDCMock.dbg.json +1 -1
  80. package/artifacts/contracts/mocks/cBATMock.sol/cBATMock.dbg.json +1 -1
  81. package/artifacts/contracts/mocks/cDAILowWorthMock.sol/cDAILowWorthMock.dbg.json +1 -1
  82. package/artifacts/contracts/mocks/cDAIMock.sol/cDAIMock.dbg.json +1 -1
  83. package/artifacts/contracts/mocks/cDAINonMintableMock.sol/cDAINonMintableMock.dbg.json +1 -1
  84. package/artifacts/contracts/mocks/cDecimalsMock.sol/cDecimalsMock.dbg.json +1 -1
  85. package/artifacts/contracts/mocks/cSDTMock.sol/cSDTMock.dbg.json +1 -1
  86. package/artifacts/contracts/mocks/cUSDCMock.sol/cUSDCMock.dbg.json +1 -1
  87. package/artifacts/contracts/reserve/DistributionHelper.sol/DistributionHelper.dbg.json +1 -1
  88. package/artifacts/contracts/reserve/ExchangeHelper.sol/ExchangeHelper.dbg.json +1 -1
  89. package/artifacts/contracts/reserve/GoodMarketMaker.sol/GoodMarketMaker.dbg.json +1 -1
  90. package/artifacts/contracts/reserve/GoodReserveCDai.sol/ContributionCalc.dbg.json +1 -1
  91. package/artifacts/contracts/reserve/GoodReserveCDai.sol/GoodReserveCDai.dbg.json +1 -1
  92. package/artifacts/contracts/staking/BaseShareField.sol/BaseShareField.dbg.json +1 -1
  93. package/artifacts/contracts/staking/BaseShareFieldV2.sol/BaseShareFieldV2.dbg.json +1 -1
  94. package/artifacts/contracts/staking/DonationsStaking.sol/DonationsStaking.dbg.json +1 -1
  95. package/artifacts/contracts/staking/FuseStakingV3.sol/FuseStakingV3.dbg.json +1 -1
  96. package/artifacts/contracts/staking/FuseStakingV3.sol/FuseStakingV3.json +2 -2
  97. package/artifacts/contracts/staking/FuseStakingV3.sol/IConsensus.dbg.json +1 -1
  98. package/artifacts/contracts/staking/FuseStakingV3.sol/PegSwap.dbg.json +1 -1
  99. package/artifacts/contracts/staking/GoodFundManager.sol/GoodFundManager.dbg.json +1 -1
  100. package/artifacts/contracts/staking/SimpleStaking.sol/SimpleStaking.dbg.json +1 -1
  101. package/artifacts/contracts/staking/SimpleStakingV2.sol/SimpleStakingV2.dbg.json +1 -1
  102. package/artifacts/contracts/staking/UniswapV2SwapHelper.sol/UniswapV2SwapHelper.dbg.json +1 -1
  103. package/artifacts/contracts/staking/aave/AaveStakingFactory.sol/AaveStakingFactory.dbg.json +1 -1
  104. package/artifacts/contracts/staking/aave/GoodAaveStaking.sol/GoodAaveStaking.dbg.json +1 -1
  105. package/artifacts/contracts/staking/aave/GoodAaveStakingV2.sol/GoodAaveStakingV2.dbg.json +1 -1
  106. package/artifacts/contracts/staking/compound/CompoundStakingFactory.sol/CompoundStakingFactory.dbg.json +1 -1
  107. package/artifacts/contracts/staking/compound/GoodCompoundStaking.sol/GoodCompoundStaking.dbg.json +1 -1
  108. package/artifacts/contracts/staking/compound/GoodCompoundStakingV2.sol/GoodCompoundStakingV2.dbg.json +1 -1
  109. package/artifacts/contracts/staking/utils/Math64X64.sol/Math64x64.dbg.json +1 -1
  110. package/artifacts/contracts/staking/utils/StakingRewardsFixedAPY.sol/StakingRewardsFixedAPY.dbg.json +1 -1
  111. package/artifacts/contracts/token/ERC20PresetMinterPauserUpgradeable.sol/ERC20PresetMinterPauserUpgradeable.dbg.json +1 -1
  112. package/artifacts/contracts/token/ERC677.sol/ERC677.dbg.json +1 -1
  113. package/artifacts/contracts/token/ERC677.sol/ERC677Receiver.dbg.json +1 -1
  114. package/artifacts/contracts/token/FeesFormula.sol/IFeesFormula.dbg.json +1 -1
  115. package/artifacts/contracts/token/GoodDollar.sol/GoodDollar.dbg.json +1 -1
  116. package/artifacts/contracts/token/superfluid/ERC20Permit.sol/ERC20Permit.dbg.json +1 -1
  117. package/artifacts/contracts/token/superfluid/ERC20Permit.sol/SelfApprove.dbg.json +1 -1
  118. package/artifacts/contracts/token/superfluid/ISuperGoodDollar.sol/IGoodDollarCustom.dbg.json +1 -1
  119. package/artifacts/contracts/token/superfluid/ISuperGoodDollar.sol/ISuperGoodDollar.dbg.json +1 -1
  120. package/artifacts/contracts/token/superfluid/SuperGoodDollar.sol/SuperGoodDollar.dbg.json +1 -1
  121. package/artifacts/contracts/token/superfluid/SuperToken.sol/SuperToken.dbg.json +1 -1
  122. package/artifacts/contracts/token/superfluid/SuperfluidToken.sol/SuperfluidToken.dbg.json +1 -1
  123. package/artifacts/contracts/token/superfluid/UUPSProxiable.sol/UUPSProxiable.dbg.json +1 -1
  124. package/artifacts/contracts/ubi/UBIScheme.sol/UBIScheme.dbg.json +1 -1
  125. package/artifacts/contracts/ubi/UBIScheme.sol/UBIScheme.json +2 -2
  126. package/artifacts/contracts/utils/AdminWallet.sol/AdminWallet.dbg.json +1 -1
  127. package/artifacts/contracts/utils/AdminWalletFuse.sol/AdminWalletFuse.dbg.json +1 -1
  128. package/artifacts/contracts/utils/BancorFormula.sol/BancorFormula.dbg.json +1 -1
  129. package/artifacts/contracts/utils/BulkProof.sol/BulkProof.dbg.json +1 -1
  130. package/artifacts/contracts/utils/BuyAndBridgeHelper.sol/BuyAndBridgeHelper.dbg.json +1 -1
  131. package/artifacts/contracts/utils/DAOContract.sol/DAOContract.dbg.json +1 -1
  132. package/artifacts/contracts/utils/DAOUpgradeableContract.sol/DAOUpgradeableContract.dbg.json +1 -1
  133. package/artifacts/contracts/utils/DSMath.sol/DSMath.dbg.json +1 -1
  134. package/artifacts/contracts/utils/DataTypes.sol/DataTypes.dbg.json +1 -1
  135. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/GoodDollarMintBurnWrapper.dbg.json +1 -1
  136. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/GoodDollarMintBurnWrapper.json +2 -9
  137. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/IRouter.dbg.json +1 -1
  138. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/PausableControl.dbg.json +1 -1
  139. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/TokenOperation.dbg.json +1 -1
  140. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/TokenOperation.json +2 -2
  141. package/artifacts/contracts/utils/MultichainBridgeHelper.sol/MultichainBridgeHelper.dbg.json +1 -1
  142. package/artifacts/contracts/utils/NameService.sol/NameService.dbg.json +1 -1
  143. package/artifacts/contracts/utils/ProtocolUpgrade.sol/OldMarketMaker.dbg.json +1 -1
  144. package/artifacts/contracts/utils/ProtocolUpgrade.sol/ProtocolUpgrade.dbg.json +1 -1
  145. package/artifacts/contracts/utils/ProtocolUpgradeFuse.sol/ProtocolUpgradeFuse.dbg.json +1 -1
  146. package/artifacts/contracts/utils/ProtocolUpgradeFuseRecover.sol/ProtocolUpgradeFuseRecover.dbg.json +1 -1
  147. package/artifacts/contracts/utils/ProtocolUpgradeRecover.sol/ProtocolUpgradeRecover.dbg.json +1 -1
  148. package/artifacts/contracts/utils/ProxyFactory1967.sol/ERC1967Proxy.dbg.json +1 -1
  149. package/artifacts/contracts/utils/ProxyFactory1967.sol/ProxyFactory1967.dbg.json +1 -1
  150. package/artifacts/contracts/utils/ReputationTestHelper.sol/ReputationTestHelper.dbg.json +1 -1
  151. package/contracts/fuseFaucet/Faucet.sol +19 -10
  152. package/contracts/fuseFaucet/FuseFaucetV2.sol +28 -16
  153. package/contracts/ubi/UBIScheme.sol +1 -1
  154. package/contracts/utils/GoodDollarMintBurnWrapper.sol +1 -19
  155. package/package.json +1 -1
  156. package/releases/deployment.json +11 -3
  157. package/scripts/multichain-deploy/2_helpers-deploy.ts +46 -21
  158. package/scripts/multichain-deploy/4_ubi-deploy.ts +19 -35
  159. package/scripts/multichain-deploy/helpers.ts +2 -2
  160. package/scripts/multichain-deploy/multichainWrapper-deploy.ts +7 -4
  161. package/scripts/upgradeToV3/v3-fuse-multichain.ts +117 -0
  162. package/scripts/upgrades/celo-defi-ubi-deploy.ts +1 -1
  163. package/scripts/upgrades/identity-upgrade.ts +20 -12
  164. package/test/faucet/Faucet.test.ts +4 -3
  165. package/test/faucet/FuseFaucet.test.ts +1 -1
  166. package/test/ubi/UBISchemeCycle.test.ts +20 -58
  167. package/test/utils/GoodDollarMintBurnWrapper.test.ts +66 -224
  168. package/types/Faucet.ts +61 -32
  169. package/types/FuseFaucetV2.ts +69 -32
  170. package/types/GoodDollarMintBurnWrapper.ts +0 -27
  171. package/types/factories/Faucet__factory.ts +42 -16
  172. package/types/factories/FuseFaucetV2__factory.ts +36 -16
  173. package/types/factories/FuseStakingV3__factory.ts +1 -1
  174. package/types/factories/GoodDollarMintBurnWrapper__factory.ts +1 -8
  175. package/types/factories/UBIScheme__factory.ts +1 -1
  176. package/scripts/multichain-deploy/v3-fix.ts +0 -120
  177. package/scripts/multichain-deploy/v3-upgrade.ts +0 -219
@@ -1,13 +1,7 @@
1
1
  import { ethers, waffle, upgrades } from "hardhat";
2
2
  import { loadFixture } from "@nomicfoundation/hardhat-network-helpers";
3
3
  import { expect } from "chai";
4
- import {
5
- GoodReserveCDai,
6
- GoodDollarMintBurnWrapper,
7
- ERC20,
8
- IGoodDollar,
9
- MultichainRouterMock
10
- } from "../../types";
4
+ import { GoodReserveCDai, GoodDollarMintBurnWrapper, ERC20, IGoodDollar, MultichainRouterMock } from "../../types";
11
5
  import { createDAO, increaseTime } from "../helpers";
12
6
  import { FormatTypes } from "@ethersproject/abi";
13
7
 
@@ -38,16 +32,7 @@ describe("GoodDollarMintBurnWrapper", () => {
38
32
  controller;
39
33
 
40
34
  before(async () => {
41
- [
42
- founder,
43
- wrapperAdmin,
44
- minter,
45
- rewarder,
46
- guardian,
47
- minterUncapped,
48
- router,
49
- ...signers
50
- ] = await ethers.getSigners();
35
+ [founder, wrapperAdmin, minter, rewarder, guardian, minterUncapped, router, ...signers] = await ethers.getSigners();
51
36
 
52
37
  let {
53
38
  controller: ctrl,
@@ -103,47 +88,20 @@ describe("GoodDollarMintBurnWrapper", () => {
103
88
  }
104
89
  )) as GoodDollarMintBurnWrapper;
105
90
 
106
- await wrapper
107
- .connect(wrapperAdmin)
108
- .grantRole(await wrapper.GUARDIAN_ROLE(), guardian.address);
91
+ await wrapper.connect(wrapperAdmin).grantRole(await wrapper.GUARDIAN_ROLE(), guardian.address);
109
92
 
110
93
  await goodDollar.mint(controller, 10000000); //so bps limit is significant
111
94
 
112
95
  await wrapper
113
96
  .connect(wrapperAdmin)
114
- .addMinter(
115
- router.address,
116
- MINTER_CAP,
117
- MINTER_TX_MAX,
118
- REWARD_BPS,
119
- MINTER_CAP,
120
- MINTER_TX_MAX,
121
- REWARD_BPS,
122
- false
123
- );
97
+ .addMinter(router.address, MINTER_CAP, MINTER_TX_MAX, REWARD_BPS, MINTER_CAP, MINTER_TX_MAX, REWARD_BPS, false);
124
98
 
125
99
  await wrapper
126
100
  .connect(wrapperAdmin)
127
- .addMinter(
128
- minter.address,
129
- MINTER_CAP,
130
- MINTER_TX_MAX,
131
- REWARD_BPS,
132
- MINTER_CAP,
133
- MINTER_TX_MAX,
134
- REWARD_BPS,
135
- false
136
- );
137
- await wrapper
138
- .connect(wrapperAdmin)
139
- .addMinter(rewarder.address, 0, 0, REWARD_BPS, 0, 0, 0, true);
101
+ .addMinter(minter.address, MINTER_CAP, MINTER_TX_MAX, REWARD_BPS, MINTER_CAP, MINTER_TX_MAX, REWARD_BPS, false);
102
+ await wrapper.connect(wrapperAdmin).addMinter(rewarder.address, 0, 0, REWARD_BPS, 0, 0, 0, true);
140
103
 
141
- await ictrl.registerScheme(
142
- wrapper.address,
143
- ethers.constants.HashZero,
144
- "0x00000001",
145
- avatar
146
- );
104
+ await ictrl.registerScheme(wrapper.address, ethers.constants.HashZero, "0x00000001", avatar);
147
105
  return { wrapper };
148
106
  };
149
107
 
@@ -167,9 +125,7 @@ describe("GoodDollarMintBurnWrapper", () => {
167
125
  }
168
126
  )) as GoodDollarMintBurnWrapper;
169
127
 
170
- const multiChainRouter = (await rf.deploy(
171
- wrapper.address
172
- )) as MultichainRouterMock;
128
+ const multiChainRouter = (await rf.deploy(wrapper.address)) as MultichainRouterMock;
173
129
 
174
130
  await wrapper
175
131
  .connect(wrapperAdmin)
@@ -207,19 +163,13 @@ describe("GoodDollarMintBurnWrapper", () => {
207
163
  const { wrapper } = await waffle.loadFixture(fixture);
208
164
 
209
165
  expect(await wrapper.owner()).to.equal(avatar);
210
- expect(await wrapper.hasRole(await wrapper.DEFAULT_ADMIN_ROLE(), avatar)).to
211
- .be.true;
166
+ expect(await wrapper.hasRole(await wrapper.DEFAULT_ADMIN_ROLE(), avatar)).to.be.true;
212
167
  });
213
168
 
214
169
  it("should have admin from params as default admin ", async () => {
215
170
  const { wrapper } = await waffle.loadFixture(fixture);
216
171
 
217
- expect(
218
- await wrapper.hasRole(
219
- await wrapper.DEFAULT_ADMIN_ROLE(),
220
- wrapperAdmin.address
221
- )
222
- ).to.be.true;
172
+ expect(await wrapper.hasRole(await wrapper.DEFAULT_ADMIN_ROLE(), wrapperAdmin.address)).to.be.true;
223
173
  });
224
174
 
225
175
  it("should have erc20 token info", async () => {
@@ -233,87 +183,58 @@ describe("GoodDollarMintBurnWrapper", () => {
233
183
  it("should update updateFrequency only by admin or guardian role", async () => {
234
184
  const { wrapper } = await waffle.loadFixture(fixture);
235
185
 
236
- expect(await wrapper.updateFrequency()).to.equal(60 * 60 * 24 * 90); //default 90 days;
186
+ expect(await wrapper.updateFrequency()).to.equal(60 * 60 * 24 * 7); //default 90 days;
237
187
 
238
188
  await expect(wrapper.setUpdateFrequency(0)).to.be.revertedWith("role");
239
- await expect(wrapper.connect(wrapperAdmin).setUpdateFrequency(0)).to.not
240
- .reverted;
189
+ await expect(wrapper.connect(wrapperAdmin).setUpdateFrequency(0)).to.not.reverted;
241
190
  expect(await wrapper.updateFrequency()).to.equal(0);
242
- await expect(wrapper.connect(guardian).setUpdateFrequency(1)).to.not
243
- .reverted;
191
+ await expect(wrapper.connect(guardian).setUpdateFrequency(1)).to.not.reverted;
244
192
  expect(await wrapper.updateFrequency()).to.equal(1);
245
193
  });
246
194
 
247
195
  it("should be able to pause roles only by admin or guardian role", async () => {
248
196
  const { wrapper } = await waffle.loadFixture(fixture);
249
197
 
250
- await expect(
251
- wrapper.unpause(await wrapper.PAUSE_ALL_ROLE())
252
- ).to.be.revertedWith("role");
198
+ await expect(wrapper.unpause(await wrapper.PAUSE_ALL_ROLE())).to.be.revertedWith("role");
253
199
 
254
- await expect(
255
- wrapper.connect(wrapperAdmin).pause(await wrapper.PAUSE_BURN_ROLE())
256
- ).to.not.reverted;
257
- await expect(
258
- wrapper.connect(guardian).pause(await wrapper.PAUSE_ALL_ROLE())
259
- ).to.not.reverted;
200
+ await expect(wrapper.connect(wrapperAdmin).pause(await wrapper.PAUSE_BURN_ROLE())).to.not.reverted;
201
+ await expect(wrapper.connect(guardian).pause(await wrapper.PAUSE_ALL_ROLE())).to.not.reverted;
260
202
 
261
- expect(await wrapper.paused(await wrapper.PAUSE_BURN_ROLE())).to.equal(
262
- true
263
- );
203
+ expect(await wrapper.paused(await wrapper.PAUSE_BURN_ROLE())).to.equal(true);
264
204
  expect(await wrapper.paused(await wrapper.PAUSE_ALL_ROLE())).to.equal(true);
265
205
  });
266
206
 
267
207
  it("should be able to unpause roles only by admin or guardian role", async () => {
268
208
  const { wrapper } = await waffle.loadFixture(fixture);
269
209
 
270
- await expect(
271
- wrapper.unpause(await wrapper.PAUSE_ALL_ROLE())
272
- ).to.be.revertedWith("role");
210
+ await expect(wrapper.unpause(await wrapper.PAUSE_ALL_ROLE())).to.be.revertedWith("role");
273
211
 
274
- await expect(
275
- wrapper.connect(wrapperAdmin).pause(await wrapper.PAUSE_BURN_ROLE())
276
- ).to.not.reverted;
212
+ await expect(wrapper.connect(wrapperAdmin).pause(await wrapper.PAUSE_BURN_ROLE())).to.not.reverted;
277
213
 
278
- await expect(
279
- wrapper.connect(wrapperAdmin).pause(await wrapper.PAUSE_ALL_ROLE())
280
- ).to.not.reverted;
214
+ await expect(wrapper.connect(wrapperAdmin).pause(await wrapper.PAUSE_ALL_ROLE())).to.not.reverted;
281
215
 
282
- await expect(
283
- wrapper.connect(guardian).unpause(await wrapper.PAUSE_ALL_ROLE())
284
- ).to.not.reverted;
216
+ await expect(wrapper.connect(guardian).unpause(await wrapper.PAUSE_ALL_ROLE())).to.not.reverted;
285
217
 
286
- await expect(
287
- wrapper.connect(wrapperAdmin).unpause(await wrapper.PAUSE_BURN_ROLE())
288
- ).to.not.reverted;
218
+ await expect(wrapper.connect(wrapperAdmin).unpause(await wrapper.PAUSE_BURN_ROLE())).to.not.reverted;
289
219
 
290
- expect(await wrapper.paused(await wrapper.PAUSE_BURN_ROLE())).to.equal(
291
- false
292
- );
293
- expect(await wrapper.paused(await wrapper.PAUSE_ALL_ROLE())).to.equal(
294
- false
295
- );
220
+ expect(await wrapper.paused(await wrapper.PAUSE_BURN_ROLE())).to.equal(false);
221
+ expect(await wrapper.paused(await wrapper.PAUSE_ALL_ROLE())).to.equal(false);
296
222
  });
297
223
 
298
224
  it("should be able to mint only by minter role", async () => {
299
225
  const { wrapper } = await waffle.loadFixture(fixture);
300
226
 
301
227
  await expect(wrapper.mint(founder.address, 1000)).to.revertedWith("role");
302
- await expect(wrapper.connect(minter).mint(signers[0].address, 1000)).to.not
303
- .reverted;
228
+ await expect(wrapper.connect(minter).mint(signers[0].address, 1000)).to.not.reverted;
304
229
  expect(await goodDollar.balanceOf(signers[0].address)).to.equal(1000);
305
230
  });
306
231
 
307
232
  it("should not be able to mint when minter is paused", async () => {
308
233
  const { wrapper } = await waffle.loadFixture(fixture);
309
234
 
310
- await expect(
311
- wrapper.connect(guardian).pause(await wrapper.PAUSE_MINT_ROLE())
312
- ).to.not.reverted;
235
+ await expect(wrapper.connect(guardian).pause(await wrapper.PAUSE_MINT_ROLE())).to.not.reverted;
313
236
 
314
- await expect(
315
- wrapper.connect(minter).mint(signers[0].address, 1000)
316
- ).revertedWith("pause");
237
+ await expect(wrapper.connect(minter).mint(signers[0].address, 1000)).revertedWith("pause");
317
238
  });
318
239
 
319
240
  it("should not be able to mint when passed daily cap", async () => {
@@ -331,9 +252,7 @@ describe("GoodDollarMintBurnWrapper", () => {
331
252
  it("should not be able to mint when passed tx cap", async () => {
332
253
  const { wrapper } = await waffle.loadFixture(fixture);
333
254
 
334
- await expect(
335
- wrapper.connect(minter).mint(signers[0].address, MINTER_TX_MAX + 1)
336
- ).revertedWith("max");
255
+ await expect(wrapper.connect(minter).mint(signers[0].address, MINTER_TX_MAX + 1)).revertedWith("max");
337
256
  });
338
257
 
339
258
  it("should not be able to mint when passed minter cap", async () => {
@@ -346,26 +265,18 @@ describe("GoodDollarMintBurnWrapper", () => {
346
265
  await wrapper.connect(minter).mint(signers[0].address, MINTER_TX_MAX);
347
266
  }
348
267
 
349
- await expect(
350
- wrapper.connect(minter).mint(signers[0].address, MINTER_TX_MAX)
351
- ).revertedWith("minter cap");
268
+ await expect(wrapper.connect(minter).mint(signers[0].address, MINTER_TX_MAX)).revertedWith("minter cap");
352
269
  });
353
270
 
354
271
  xit("should not be able to mint when passed global cap", async () => {
355
272
  const { wrapper } = await waffle.loadFixture(fixture);
356
273
 
357
- await wrapper
358
- .connect(wrapperAdmin)
359
- .addMinter(minterUncapped.address, 0, 10000000000, 0, 0, 0, 0, false);
274
+ await wrapper.connect(wrapperAdmin).addMinter(minterUncapped.address, 0, 10000000000, 0, 0, 0, 0, false);
360
275
 
361
276
  for (let i = 0; i < 100000000000 / 10000000000; i++)
362
- await wrapper
363
- .connect(minterUncapped)
364
- .mint(signers[0].address, 10000000000);
277
+ await wrapper.connect(minterUncapped).mint(signers[0].address, 10000000000);
365
278
 
366
- await expect(
367
- wrapper.connect(minterUncapped).mint(signers[0].address, 10000000000)
368
- ).revertedWith("total mint");
279
+ await expect(wrapper.connect(minterUncapped).mint(signers[0].address, 10000000000)).revertedWith("total mint");
369
280
  });
370
281
 
371
282
  it("should not be able to burn when passed daily cap", async () => {
@@ -386,9 +297,7 @@ describe("GoodDollarMintBurnWrapper", () => {
386
297
 
387
298
  await goodDollar.mint(signers[0].address, 100000000);
388
299
  await goodDollar.connect(signers[0]).approve(wrapper.address, 100000000);
389
- await expect(
390
- wrapper.connect(router).burn(signers[0].address, MINTER_TX_MAX + 1)
391
- ).revertedWith("max");
300
+ await expect(wrapper.connect(router).burn(signers[0].address, MINTER_TX_MAX + 1)).revertedWith("max");
392
301
  });
393
302
 
394
303
  it("should not be able to burn when passed minter cap", async () => {
@@ -403,9 +312,7 @@ describe("GoodDollarMintBurnWrapper", () => {
403
312
  await wrapper.connect(router).burn(signers[0].address, MINTER_TX_MAX);
404
313
  }
405
314
 
406
- await expect(
407
- wrapper.connect(router).burn(signers[0].address, MINTER_TX_MAX)
408
- ).revertedWith("minter cap");
315
+ await expect(wrapper.connect(router).burn(signers[0].address, MINTER_TX_MAX)).revertedWith("minter cap");
409
316
  });
410
317
 
411
318
  it("should update stats after mint", async () => {
@@ -429,11 +336,8 @@ describe("GoodDollarMintBurnWrapper", () => {
429
336
  const { wrapper } = await waffle.loadFixture(fixture);
430
337
  await goodDollar.mint(founder.address, 1000);
431
338
  await goodDollar.connect(founder).approve(wrapper.address, 1000);
432
- await expect(
433
- wrapper.connect(guardian).burn(founder.address, 1000)
434
- ).to.revertedWith("role");
435
- await expect(wrapper.connect(router).burn(founder.address, 1000)).to.not
436
- .reverted;
339
+ await expect(wrapper.connect(guardian).burn(founder.address, 1000)).to.revertedWith("role");
340
+ await expect(wrapper.connect(router).burn(founder.address, 1000)).to.not.reverted;
437
341
 
438
342
  expect(await goodDollar.balanceOf(founder.address)).to.equal(0);
439
343
  });
@@ -441,16 +345,12 @@ describe("GoodDollarMintBurnWrapper", () => {
441
345
  it("should not be able to burn when router is paused", async () => {
442
346
  const { wrapper } = await waffle.loadFixture(fixture);
443
347
 
444
- await expect(
445
- wrapper.connect(guardian).pause(await wrapper.PAUSE_ROUTER_ROLE())
446
- ).to.not.reverted;
348
+ await expect(wrapper.connect(guardian).pause(await wrapper.PAUSE_ROUTER_ROLE())).to.not.reverted;
447
349
 
448
350
  await goodDollar.mint(founder.address, 1000);
449
351
  await goodDollar.connect(founder).approve(wrapper.address, 1000);
450
352
 
451
- await expect(
452
- wrapper.connect(router).burn(founder.address, 1000)
453
- ).revertedWith("pause");
353
+ await expect(wrapper.connect(router).burn(founder.address, 1000)).revertedWith("pause");
454
354
  });
455
355
 
456
356
  it("should not update stats after burn when not minted yet", async () => {
@@ -458,8 +358,7 @@ describe("GoodDollarMintBurnWrapper", () => {
458
358
 
459
359
  await goodDollar.mint(founder.address, 1000);
460
360
  await goodDollar.connect(founder).approve(wrapper.address, 1000);
461
- await expect(wrapper.connect(router).burn(founder.address, 1000)).to.not
462
- .reverted;
361
+ await expect(wrapper.connect(router).burn(founder.address, 1000)).to.not.reverted;
463
362
 
464
363
  expect(await wrapper.totalMinted()).eq(0);
465
364
 
@@ -474,8 +373,7 @@ describe("GoodDollarMintBurnWrapper", () => {
474
373
 
475
374
  await goodDollar.mint(founder.address, 500);
476
375
  await goodDollar.connect(founder).approve(wrapper.address, 500);
477
- await expect(wrapper.connect(router).burn(founder.address, 500)).to.not
478
- .reverted;
376
+ await expect(wrapper.connect(router).burn(founder.address, 500)).to.not.reverted;
479
377
 
480
378
  expect(await wrapper.totalMinted()).eq(500);
481
379
 
@@ -486,15 +384,12 @@ describe("GoodDollarMintBurnWrapper", () => {
486
384
  it("should update both global and minter stats when minter==burner after burn when already minted", async () => {
487
385
  const { wrapper } = await waffle.loadFixture(fixture);
488
386
 
489
- await wrapper
490
- .connect(wrapperAdmin)
491
- .grantRole(await wrapper.ROUTER_ROLE(), minter.address);
387
+ await wrapper.connect(wrapperAdmin).grantRole(await wrapper.ROUTER_ROLE(), minter.address);
492
388
  await wrapper.connect(minter).mint(signers[0].address, 1000);
493
389
 
494
390
  await goodDollar.mint(founder.address, 500);
495
391
  await goodDollar.connect(founder).approve(wrapper.address, 500);
496
- await expect(wrapper.connect(minter).burn(founder.address, 500)).to.not
497
- .reverted;
392
+ await expect(wrapper.connect(minter).burn(founder.address, 500)).to.not.reverted;
498
393
 
499
394
  expect(await wrapper.totalMinted()).eq(500);
500
395
 
@@ -505,15 +400,12 @@ describe("GoodDollarMintBurnWrapper", () => {
505
400
  it("should reset minter total when burn amount > total", async () => {
506
401
  const { wrapper } = await waffle.loadFixture(fixture);
507
402
 
508
- await wrapper
509
- .connect(wrapperAdmin)
510
- .grantRole(await wrapper.ROUTER_ROLE(), minter.address);
403
+ await wrapper.connect(wrapperAdmin).grantRole(await wrapper.ROUTER_ROLE(), minter.address);
511
404
  await wrapper.connect(minter).mint(signers[0].address, 1000);
512
405
 
513
406
  await goodDollar.mint(founder.address, 2000);
514
407
  await goodDollar.connect(founder).approve(wrapper.address, 2000);
515
- await expect(wrapper.connect(minter).burn(founder.address, 2000)).to.not
516
- .reverted;
408
+ await expect(wrapper.connect(minter).burn(founder.address, 2000)).to.not.reverted;
517
409
 
518
410
  expect(await wrapper.totalMinted()).eq(0);
519
411
 
@@ -596,15 +488,11 @@ describe("GoodDollarMintBurnWrapper", () => {
596
488
 
597
489
  let minterInfo = await wrapper.minterSupply(rewarder.address);
598
490
 
599
- await wrapper
600
- .connect(rewarder)
601
- .sendOrMint(signers[0].address, minterInfo.dailyCapIn.add(1000));
491
+ await wrapper.connect(rewarder).sendOrMint(signers[0].address, minterInfo.dailyCapIn.add(1000));
602
492
 
603
493
  minterInfo = await wrapper.minterSupply(rewarder.address);
604
494
 
605
- expect(await goodDollar.balanceOf(signers[0].address)).to.eq(
606
- minterInfo.dailyCapIn
607
- );
495
+ expect(await goodDollar.balanceOf(signers[0].address)).to.eq(minterInfo.dailyCapIn);
608
496
  expect(minterInfo.totalIn).eq(minterInfo.dailyCapIn);
609
497
  expect(minterInfo.totalRewards).eq(minterInfo.dailyCapIn);
610
498
  expect(minterInfo.mintedToday).eq(minterInfo.dailyCapIn);
@@ -622,12 +510,9 @@ describe("GoodDollarMintBurnWrapper", () => {
622
510
 
623
511
  await increaseTime(60 * 60 * 24);
624
512
 
625
- await expect(
626
- wrapper.connect(rewarder).sendOrMint(signers[0].address, "1001")
627
- ).to.not.reverted;
513
+ await expect(wrapper.connect(rewarder).sendOrMint(signers[0].address, "1001")).to.not.reverted;
628
514
 
629
- await expect(wrapper.connect(minter).mint(signers[0].address, "1001")).to
630
- .not.reverted;
515
+ await expect(wrapper.connect(minter).mint(signers[0].address, "1001")).to.not.reverted;
631
516
 
632
517
  expect(await goodDollar.balanceOf(signers[0].address)).to.eq("4002");
633
518
  const minterInfo = await wrapper.minterSupply(rewarder.address);
@@ -645,31 +530,21 @@ describe("GoodDollarMintBurnWrapper", () => {
645
530
  const frequency = await wrapper.updateFrequency();
646
531
  await increaseTime(frequency.toNumber());
647
532
 
648
- await wrapper
649
- .connect(rewarder)
650
- .sendOrMint(signers[0].address, minterInfo.dailyCapIn.add(1000));
533
+ await wrapper.connect(rewarder).sendOrMint(signers[0].address, minterInfo.dailyCapIn.add(1000));
651
534
 
652
535
  let minterInfoAfter = await wrapper.minterSupply(rewarder.address);
653
536
 
654
537
  expect(minterInfoAfter.dailyCapIn).gt(minterInfo.dailyCapIn);
655
- expect(minterInfoAfter.dailyCapIn).eq(
656
- totalSupplyBeforeMint.mul(REWARD_BPS).div(10000)
657
- ); //we doubled the G$ supply so bps relative to supply should be double now
538
+ expect(minterInfoAfter.dailyCapIn).eq(totalSupplyBeforeMint.mul(REWARD_BPS).div(10000)); //we doubled the G$ supply so bps relative to supply should be double now
658
539
  });
659
540
 
660
541
  it("should not mint but not revert when rewarder passes daily limit", async () => {
661
542
  const { wrapper } = await waffle.loadFixture(fixture);
662
543
 
663
544
  const minterInfo = await wrapper.minterSupply(rewarder.address);
664
- await wrapper
665
- .connect(rewarder)
666
- .sendOrMint(signers[0].address, minterInfo.dailyCapIn);
545
+ await wrapper.connect(rewarder).sendOrMint(signers[0].address, minterInfo.dailyCapIn);
667
546
 
668
- const tx = await (
669
- await wrapper
670
- .connect(rewarder)
671
- .sendOrMint(signers[1].address, minterInfo.dailyCapIn)
672
- ).wait();
547
+ const tx = await (await wrapper.connect(rewarder).sendOrMint(signers[1].address, minterInfo.dailyCapIn)).wait();
673
548
 
674
549
  const sendOrMintEvent = tx.events.find(_ => _.event === "SendOrMint");
675
550
 
@@ -681,15 +556,9 @@ describe("GoodDollarMintBurnWrapper", () => {
681
556
  it("should allow guardian to update minter limits and rewarder daily limit", async () => {
682
557
  const { wrapper } = await waffle.loadFixture(fixture);
683
558
 
684
- await expect(
685
- wrapper.setMinterCaps(minter.address, 0, 0, 0, 0, 0, 0)
686
- ).to.be.revertedWith("role");
559
+ await expect(wrapper.setMinterCaps(minter.address, 0, 0, 0, 0, 0, 0)).to.be.revertedWith("role");
687
560
 
688
- await expect(
689
- wrapper
690
- .connect(guardian)
691
- .setMinterCaps(minter.address, 0, 0, 50, 0, 0, 60)
692
- ).to.not.reverted;
561
+ await expect(wrapper.connect(guardian).setMinterCaps(minter.address, 0, 0, 50, 0, 0, 60)).to.not.reverted;
693
562
 
694
563
  const minterInfo = await wrapper.minterSupply(minter.address);
695
564
  const minterOutLimits = await wrapper.minterOutLimits(minter.address);
@@ -700,12 +569,8 @@ describe("GoodDollarMintBurnWrapper", () => {
700
569
  expect(minterOutLimits.capOut).to.eq(0);
701
570
  expect(minterOutLimits.maxOut).to.eq(0);
702
571
  expect(minterOutLimits.bpsPerDayOut).to.eq(60);
703
- expect(minterInfo.dailyCapIn).eq(
704
- (await goodDollar.totalSupply()).mul(50).div(10000)
705
- );
706
- expect(minterOutLimits.dailyCapOut).eq(
707
- (await goodDollar.totalSupply()).mul(60).div(10000)
708
- );
572
+ expect(minterInfo.dailyCapIn).eq((await goodDollar.totalSupply()).mul(50).div(10000));
573
+ expect(minterOutLimits.dailyCapOut).eq((await goodDollar.totalSupply()).mul(60).div(10000));
709
574
  });
710
575
 
711
576
  xit("should allow guardian to update totalMintCap", async () => {
@@ -719,67 +584,48 @@ describe("GoodDollarMintBurnWrapper", () => {
719
584
  });
720
585
 
721
586
  it("should support transferAndCall for multichain bridge transfer", async () => {
722
- const { wrapper, multiChainRouter } = await waffle.loadFixture(
723
- fixture_withMultichain
724
- );
587
+ const { wrapper, multiChainRouter } = await waffle.loadFixture(fixture_withMultichain);
725
588
 
726
589
  await goodDollar.mint(founder.address, 100000);
727
590
  await goodDollar.transferAndCall(
728
591
  wrapper.address,
729
592
  100000,
730
- ethers.utils.defaultAbiCoder.encode(
731
- ["address", "uint256"],
732
- [minter.address, "4220"]
733
- )
593
+ ethers.utils.defaultAbiCoder.encode(["address", "uint256"], [minter.address, "4220"])
734
594
  );
735
595
 
736
596
  expect(await goodDollar.balanceOf(founder.address)).to.eq(0); //verify burn happened
737
597
  expect(await goodDollar.balanceOf(wrapper.address)).to.eq(0); //verify burn happened
738
- const events = await multiChainRouter.queryFilter(
739
- multiChainRouter.filters.AnySwap()
740
- );
598
+ const events = await multiChainRouter.queryFilter(multiChainRouter.filters.AnySwap());
741
599
  expect(events[0].args.recipient).to.equal(minter.address);
742
600
  expect(events[0].args.chainId).to.equal(4220);
743
601
  });
744
602
 
745
603
  it("should default to sender as recipient on transferAndCall if recipient=0", async () => {
746
- const { wrapper, multiChainRouter } = await waffle.loadFixture(
747
- fixture_withMultichain
748
- );
604
+ const { wrapper, multiChainRouter } = await waffle.loadFixture(fixture_withMultichain);
749
605
 
750
606
  await goodDollar.mint(founder.address, 100000);
751
607
  await goodDollar.transferAndCall(
752
608
  wrapper.address,
753
609
  100000,
754
- ethers.utils.defaultAbiCoder.encode(
755
- ["address", "uint256"],
756
- [ethers.constants.AddressZero, "4220"]
757
- )
610
+ ethers.utils.defaultAbiCoder.encode(["address", "uint256"], [ethers.constants.AddressZero, "4220"])
758
611
  );
759
612
 
760
613
  expect(await goodDollar.balanceOf(founder.address)).to.eq(0); //verify burn happened
761
614
  expect(await goodDollar.balanceOf(wrapper.address)).to.eq(0); //verify burn happened
762
- const events = await multiChainRouter.queryFilter(
763
- multiChainRouter.filters.AnySwap()
764
- );
615
+ const events = await multiChainRouter.queryFilter(multiChainRouter.filters.AnySwap());
765
616
  expect(events[0].args.recipient).to.equal(founder.address);
766
617
  expect(events[0].args.chainId).to.equal(4220);
767
618
  });
768
619
 
769
620
  it("should fail transferAndCall for multichain if no chainid", async () => {
770
- const { wrapper, multiChainRouter } = await waffle.loadFixture(
771
- fixture_withMultichain
772
- );
621
+ const { wrapper, multiChainRouter } = await waffle.loadFixture(fixture_withMultichain);
773
622
 
774
623
  await goodDollar.mint(founder.address, 100000);
775
624
  await expect(
776
625
  goodDollar.transferAndCall(
777
626
  wrapper.address,
778
627
  100000,
779
- ethers.utils.defaultAbiCoder.encode(
780
- ["address", "uint"],
781
- [minter.address, 0]
782
- )
628
+ ethers.utils.defaultAbiCoder.encode(["address", "uint"], [minter.address, 0])
783
629
  )
784
630
  ).revertedWith("chainId");
785
631
  });
@@ -787,11 +633,7 @@ describe("GoodDollarMintBurnWrapper", () => {
787
633
  it("should not mint or sendOrMint to self", async () => {
788
634
  const { wrapper } = await waffle.loadFixture(fixture);
789
635
 
790
- await expect(wrapper.connect(minter).mint(wrapper.address, 1)).revertedWith(
791
- "self"
792
- );
793
- await expect(
794
- wrapper.connect(rewarder).sendOrMint(wrapper.address, 1)
795
- ).revertedWith("self");
636
+ await expect(wrapper.connect(minter).mint(wrapper.address, 1)).revertedWith("self");
637
+ await expect(wrapper.connect(rewarder).sendOrMint(wrapper.address, 1)).revertedWith("self");
796
638
  });
797
639
  });