Skip to content

Commit 355a5d8

Browse files
committed
Start first cycle when first time enable prod mode
1 parent 663ae5c commit 355a5d8

File tree

2 files changed

+8
-1
lines changed

2 files changed

+8
-1
lines changed

contracts/exchange.sol

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ contract Exchange is Initializable, UUPSUpgradeable, OwnableUpgradeable {
7777

7878
test_mode = true;
7979

80-
_newCycle();
80+
//_newCycle();
8181
}
8282

8383
function getCircleBalance(uint256 circle) public view returns (uint256) {
@@ -207,6 +207,11 @@ contract Exchange is Initializable, UUPSUpgradeable, OwnableUpgradeable {
207207

208208
// 将剩余的DMC还给owner
209209
DMC(dmcToken).transfer(msg.sender, DMC(dmcToken).balanceOf(address(this)));
210+
211+
// 如果是首次开启生产模式,初始化第一个周期
212+
if (current_circle == 0) {
213+
_newCycle();
214+
}
210215
}
211216

212217
function addFreeDMCTestMintBalance(uint256 amount) public onlyOwner testEnabled {

test/test_exchange.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,8 @@ describe("Exchange", function () {
5858
})
5959

6060
it("enable prod mode", async () => {
61+
// 模拟在开启生产模式之前过了很久,超过一个周期的情况
62+
mine(20, {interval: 1000});
6163
await (await exchange.enableProdMode()).wait();
6264

6365
await expect(exchange.enableProdMode()).to.revertedWith("contract not in test mode");

0 commit comments

Comments
 (0)