Skip to content

Commit

Permalink
more
Browse files Browse the repository at this point in the history
  • Loading branch information
dantaik committed Jul 4, 2024
1 parent 94747e8 commit 266c5dc
Show file tree
Hide file tree
Showing 9 changed files with 94 additions and 181 deletions.
42 changes: 15 additions & 27 deletions packages/protocol/test/L1/TaikoL1TestGroup1.t.sol
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ contract TaikoL1TestGroup1 is TaikoL1TestGroupBase {

proposedAt = blk.proposedAt;

assertEq(tko.balanceOf(Alice) + L1.bondBalanceOf(Alice), 10_000 ether - livenessBond);
assertEq(totalTkoBalance(tko, L1, Alice), 10_000 ether - livenessBond);
}

// Prove the block
Expand Down Expand Up @@ -79,9 +79,7 @@ contract TaikoL1TestGroup1 is TaikoL1TestGroupBase {

provenAt = ts.timestamp;

assertEq(
tko.balanceOf(Alice) + L1.bondBalanceOf(Alice), 10_000 ether - tierOp.validityBond
);
assertEq(totalTkoBalance(tko, L1, Alice), 10_000 ether - tierOp.validityBond);
}

console2.log("====== Verify block");
Expand All @@ -105,7 +103,7 @@ contract TaikoL1TestGroup1 is TaikoL1TestGroupBase {
assertEq(ts.validityBond, tierOp.validityBond);
assertEq(ts.timestamp, provenAt);

assertEq(tko.balanceOf(Alice) + L1.bondBalanceOf(Alice), 10_000 ether);
assertEq(totalTkoBalance(tko, L1, Alice), 10_000 ether);
}
}

Expand Down Expand Up @@ -139,7 +137,7 @@ contract TaikoL1TestGroup1 is TaikoL1TestGroupBase {

proposedAt = blk.proposedAt;

assertEq(tko.balanceOf(Alice) + L1.bondBalanceOf(Alice), 10_000 ether - livenessBond);
assertEq(totalTkoBalance(tko, L1, Alice), 10_000 ether - livenessBond);
}

// Prove the block
Expand Down Expand Up @@ -173,9 +171,7 @@ contract TaikoL1TestGroup1 is TaikoL1TestGroupBase {

provenAt = ts.timestamp;

assertEq(
tko.balanceOf(Taylor) + L1.bondBalanceOf(Taylor), 10_000 ether - tierOp.validityBond
);
assertEq(totalTkoBalance(tko, L1, Taylor), 10_000 ether - tierOp.validityBond);
}

console2.log("====== Verify block");
Expand All @@ -199,8 +195,8 @@ contract TaikoL1TestGroup1 is TaikoL1TestGroupBase {
assertEq(ts.validityBond, tierOp.validityBond);
assertEq(ts.timestamp, provenAt);

assertEq(tko.balanceOf(Alice) + L1.bondBalanceOf(Alice), 10_000 ether - livenessBond);
assertEq(tko.balanceOf(Taylor) + L1.bondBalanceOf(Taylor), 10_000 ether);
assertEq(totalTkoBalance(tko, L1, Alice), 10_000 ether - livenessBond);
assertEq(totalTkoBalance(tko, L1, Taylor), 10_000 ether);
}
}

Expand Down Expand Up @@ -250,10 +246,8 @@ contract TaikoL1TestGroup1 is TaikoL1TestGroupBase {
assertEq(ts.prover, Taylor);
assertEq(ts.validityBond, tierOp.validityBond);

assertEq(
tko.balanceOf(Alice) + L1.bondBalanceOf(Alice), 10_000 ether - tierOp.validityBond
);
assertEq(tko.balanceOf(Taylor) + L1.bondBalanceOf(Taylor), 10_000 ether);
assertEq(totalTkoBalance(tko, L1, Alice), 10_000 ether - tierOp.validityBond);
assertEq(totalTkoBalance(tko, L1, Taylor), 10_000 ether);
}
}

Expand Down Expand Up @@ -303,9 +297,7 @@ contract TaikoL1TestGroup1 is TaikoL1TestGroupBase {
assertEq(ts.prover, Alice);
assertEq(ts.validityBond, tierOp.validityBond);

assertEq(
tko.balanceOf(Taylor) + L1.bondBalanceOf(Taylor), 10_000 ether - tierOp.validityBond
);
assertEq(totalTkoBalance(tko, L1, Taylor), 10_000 ether - tierOp.validityBond);
}
}

Expand Down Expand Up @@ -356,10 +348,7 @@ contract TaikoL1TestGroup1 is TaikoL1TestGroupBase {
assertEq(ts.prover, Taylor);
assertEq(ts.validityBond, tierOp.validityBond);

assertEq(
tko.balanceOf(Alice) + L1.bondBalanceOf(Alice),
10_000 ether - L1.getConfig().livenessBond
);
assertEq(totalTkoBalance(tko, L1, Alice), 10_000 ether - L1.getConfig().livenessBond);
}
}
// Test summary:
Expand Down Expand Up @@ -393,7 +382,7 @@ contract TaikoL1TestGroup1 is TaikoL1TestGroupBase {

proposedAt = blk.proposedAt;

assertEq(tko.balanceOf(Alice) + L1.bondBalanceOf(Alice), 10_000 ether - livenessBond);
assertEq(totalTkoBalance(tko, L1, Alice), 10_000 ether - livenessBond);
}

// Prove the block
Expand Down Expand Up @@ -428,8 +417,7 @@ contract TaikoL1TestGroup1 is TaikoL1TestGroupBase {
provenAt = ts.timestamp;

assertEq(
tko.balanceOf(Alice) + L1.bondBalanceOf(Alice),
10_000 ether - tierOp.validityBond - livenessBond
totalTkoBalance(tko, L1, Alice), 10_000 ether - tierOp.validityBond - livenessBond
);
}

Expand All @@ -454,7 +442,7 @@ contract TaikoL1TestGroup1 is TaikoL1TestGroupBase {
assertEq(ts.validityBond, tierOp.validityBond);
assertEq(ts.timestamp, provenAt);

assertEq(tko.balanceOf(Alice) + L1.bondBalanceOf(Alice), 10_000 ether - livenessBond);
assertEq(totalTkoBalance(tko, L1, Alice), 10_000 ether - livenessBond);
}
}

Expand Down Expand Up @@ -483,7 +471,7 @@ contract TaikoL1TestGroup1 is TaikoL1TestGroupBase {

proposedAt = blk.proposedAt;

assertEq(tko.balanceOf(Alice) + L1.bondBalanceOf(Alice), 10_000 ether - livenessBond);
assertEq(totalTkoBalance(tko, L1, Alice), 10_000 ether - livenessBond);
}
}
}
2 changes: 1 addition & 1 deletion packages/protocol/test/L1/TaikoL1TestGroup10.t.sol
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ contract TaikoL10TestGroup1 is TaikoL1TestGroupBase {
(, TaikoData.SlotB memory b) = L1.getStateVariables();
assertEq(b.lastVerifiedBlockId, 5);

assertEq(tko.balanceOf(Alice) + L1.bondBalanceOf(Alice), 10_000 ether);
assertEq(totalTkoBalance(tko, L1, Alice), 10_000 ether);
}
}
}
51 changes: 14 additions & 37 deletions packages/protocol/test/L1/TaikoL1TestGroup2.t.sol
Original file line number Diff line number Diff line change
Expand Up @@ -55,12 +55,8 @@ contract TaikoL1TestGroup2 is TaikoL1TestGroupBase {
assertEq(ts.prover, Alice);
assertEq(ts.timestamp, block.timestamp);

assertEq(
tko.balanceOf(Alice) + L1.bondBalanceOf(Alice), 10_000 ether - tierOp.validityBond
);
assertEq(
tko.balanceOf(Taylor) + L1.bondBalanceOf(Taylor), 10_000 ether - tierOp.contestBond
);
assertEq(totalTkoBalance(tko, L1, Alice), 10_000 ether - tierOp.validityBond);
assertEq(totalTkoBalance(tko, L1, Taylor), 10_000 ether - tierOp.contestBond);
}

console2.log("====== William proves Alice is right");
Expand All @@ -84,12 +80,10 @@ contract TaikoL1TestGroup2 is TaikoL1TestGroupBase {
assertEq(ts.prover, William);
assertEq(ts.timestamp, block.timestamp); // not zero

assertEq(tko.balanceOf(Alice) + L1.bondBalanceOf(Alice), 10_000 ether);
assertEq(
tko.balanceOf(Taylor) + L1.bondBalanceOf(Taylor), 10_000 ether - tierOp.contestBond
);
assertEq(totalTkoBalance(tko, L1, Alice), 10_000 ether);
assertEq(totalTkoBalance(tko, L1, Taylor), 10_000 ether - tierOp.contestBond);
assertEq(
tko.balanceOf(William) + L1.bondBalanceOf(William),
totalTkoBalance(tko, L1, William),
10_000 ether - tierSgx.validityBond + tierOp.contestBond * 7 / 8
);
}
Expand All @@ -112,10 +106,7 @@ contract TaikoL1TestGroup2 is TaikoL1TestGroupBase {
assertEq(ts.tier, LibTiers.TIER_SGX);
assertEq(ts.prover, William);

assertEq(
tko.balanceOf(William) + L1.bondBalanceOf(William),
10_000 ether + tierOp.contestBond * 7 / 8
);
assertEq(totalTkoBalance(tko, L1, William), 10_000 ether + tierOp.contestBond * 7 / 8);
}
}

Expand Down Expand Up @@ -170,12 +161,8 @@ contract TaikoL1TestGroup2 is TaikoL1TestGroupBase {
assertEq(ts.prover, Alice);
assertEq(ts.timestamp, block.timestamp);

assertEq(
tko.balanceOf(Alice) + L1.bondBalanceOf(Alice), 10_000 ether - tierOp.validityBond
);
assertEq(
tko.balanceOf(Taylor) + L1.bondBalanceOf(Taylor), 10_000 ether - tierOp.contestBond
);
assertEq(totalTkoBalance(tko, L1, Alice), 10_000 ether - tierOp.validityBond);
assertEq(totalTkoBalance(tko, L1, Taylor), 10_000 ether - tierOp.contestBond);
}

console2.log("====== William proves Tayler is right");
Expand All @@ -199,16 +186,12 @@ contract TaikoL1TestGroup2 is TaikoL1TestGroupBase {
assertEq(ts.prover, William);
assertEq(ts.timestamp, block.timestamp);

assertEq(
tko.balanceOf(Alice) + L1.bondBalanceOf(Alice), 10_000 ether - tierOp.validityBond
);
assertEq(totalTkoBalance(tko, L1, Alice), 10_000 ether - tierOp.validityBond);

uint256 quarterReward = tierOp.validityBond * 7 / 8 / 4;
assertEq(totalTkoBalance(tko, L1, Taylor), 10_000 ether + quarterReward * 3);
assertEq(
tko.balanceOf(Taylor) + L1.bondBalanceOf(Taylor), 10_000 ether + quarterReward * 3
);
assertEq(
tko.balanceOf(William) + L1.bondBalanceOf(William),
totalTkoBalance(tko, L1, William),
10_000 ether - tierSgx.validityBond + quarterReward
);
}
Expand All @@ -232,17 +215,11 @@ contract TaikoL1TestGroup2 is TaikoL1TestGroupBase {
assertEq(ts.validityBond, tierSgx.validityBond);
assertEq(ts.prover, William);

assertEq(
tko.balanceOf(Alice) + L1.bondBalanceOf(Alice), 10_000 ether - tierOp.validityBond
);
assertEq(totalTkoBalance(tko, L1, Alice), 10_000 ether - tierOp.validityBond);

uint256 quarterReward = tierOp.validityBond * 7 / 8 / 4;
assertEq(
tko.balanceOf(Taylor) + L1.bondBalanceOf(Taylor), 10_000 ether + quarterReward * 3
);
assertEq(
tko.balanceOf(William) + L1.bondBalanceOf(William), 10_000 ether + quarterReward
);
assertEq(totalTkoBalance(tko, L1, Taylor), 10_000 ether + quarterReward * 3);
assertEq(totalTkoBalance(tko, L1, William), 10_000 ether + quarterReward);
}
}
}
59 changes: 18 additions & 41 deletions packages/protocol/test/L1/TaikoL1TestGroup3.t.sol
Original file line number Diff line number Diff line change
Expand Up @@ -58,13 +58,9 @@ contract TaikoL1TestGroup3 is TaikoL1TestGroupBase {
assertEq(ts.prover, James);
assertEq(ts.timestamp, block.timestamp);

assertEq(tko.balanceOf(Alice) + L1.bondBalanceOf(Alice), 10_000 ether - livenessBond);
assertEq(
tko.balanceOf(James) + L1.bondBalanceOf(James), 10_000 ether - tierOp.validityBond
);
assertEq(
tko.balanceOf(Taylor) + L1.bondBalanceOf(Taylor), 10_000 ether - tierOp.contestBond
);
assertEq(totalTkoBalance(tko, L1, Alice), 10_000 ether - livenessBond);
assertEq(totalTkoBalance(tko, L1, James), 10_000 ether - tierOp.validityBond);
assertEq(totalTkoBalance(tko, L1, Taylor), 10_000 ether - tierOp.contestBond);
}

console2.log("====== William proves James is right");
Expand All @@ -88,12 +84,10 @@ contract TaikoL1TestGroup3 is TaikoL1TestGroupBase {
assertEq(ts.prover, William);
assertEq(ts.timestamp, block.timestamp); // not zero

assertEq(tko.balanceOf(Alice) + L1.bondBalanceOf(Alice), 10_000 ether - livenessBond);
assertEq(
tko.balanceOf(Taylor) + L1.bondBalanceOf(Taylor), 10_000 ether - tierOp.contestBond
);
assertEq(totalTkoBalance(tko, L1, Alice), 10_000 ether - livenessBond);
assertEq(totalTkoBalance(tko, L1, Taylor), 10_000 ether - tierOp.contestBond);
assertEq(
tko.balanceOf(William) + L1.bondBalanceOf(William),
totalTkoBalance(tko, L1, William),
10_000 ether - tierSgx.validityBond + tierOp.contestBond * 7 / 8
);
}
Expand All @@ -116,10 +110,7 @@ contract TaikoL1TestGroup3 is TaikoL1TestGroupBase {
assertEq(ts.tier, LibTiers.TIER_SGX);
assertEq(ts.prover, William);

assertEq(
tko.balanceOf(William) + L1.bondBalanceOf(William),
10_000 ether + tierOp.contestBond * 7 / 8
);
assertEq(totalTkoBalance(tko, L1, William), 10_000 ether + tierOp.contestBond * 7 / 8);
}
}

Expand Down Expand Up @@ -177,13 +168,9 @@ contract TaikoL1TestGroup3 is TaikoL1TestGroupBase {
assertEq(ts.prover, James);
assertEq(ts.timestamp, block.timestamp);

assertEq(tko.balanceOf(Alice) + L1.bondBalanceOf(Alice), 10_000 ether - livenessBond);
assertEq(
tko.balanceOf(James) + L1.bondBalanceOf(James), 10_000 ether - tierOp.validityBond
);
assertEq(
tko.balanceOf(Taylor) + L1.bondBalanceOf(Taylor), 10_000 ether - tierOp.contestBond
);
assertEq(totalTkoBalance(tko, L1, Alice), 10_000 ether - livenessBond);
assertEq(totalTkoBalance(tko, L1, James), 10_000 ether - tierOp.validityBond);
assertEq(totalTkoBalance(tko, L1, Taylor), 10_000 ether - tierOp.contestBond);
}

console2.log("====== William proves Tayler is right");
Expand All @@ -207,17 +194,13 @@ contract TaikoL1TestGroup3 is TaikoL1TestGroupBase {
assertEq(ts.prover, William);
assertEq(ts.timestamp, block.timestamp);

assertEq(tko.balanceOf(Alice) + L1.bondBalanceOf(Alice), 10_000 ether - livenessBond);
assertEq(
tko.balanceOf(James) + L1.bondBalanceOf(James), 10_000 ether - tierOp.validityBond
);
assertEq(totalTkoBalance(tko, L1, Alice), 10_000 ether - livenessBond);
assertEq(totalTkoBalance(tko, L1, James), 10_000 ether - tierOp.validityBond);

uint256 quarterReward = tierOp.validityBond * 7 / 8 / 4;
assertEq(totalTkoBalance(tko, L1, Taylor), 10_000 ether + quarterReward * 3);
assertEq(
tko.balanceOf(Taylor) + L1.bondBalanceOf(Taylor), 10_000 ether + quarterReward * 3
);
assertEq(
tko.balanceOf(William) + L1.bondBalanceOf(William),
totalTkoBalance(tko, L1, William),
10_000 ether - tierSgx.validityBond + quarterReward
);
}
Expand All @@ -241,18 +224,12 @@ contract TaikoL1TestGroup3 is TaikoL1TestGroupBase {
assertEq(ts.validityBond, tierSgx.validityBond);
assertEq(ts.prover, William);

assertEq(tko.balanceOf(Alice) + L1.bondBalanceOf(Alice), 10_000 ether - livenessBond);
assertEq(totalTkoBalance(tko, L1, Alice), 10_000 ether - livenessBond);

uint256 quarterReward = tierOp.validityBond * 7 / 8 / 4;
assertEq(
tko.balanceOf(James) + L1.bondBalanceOf(James), 10_000 ether - tierOp.validityBond
);
assertEq(
tko.balanceOf(Taylor) + L1.bondBalanceOf(Taylor), 10_000 ether + quarterReward * 3
);
assertEq(
tko.balanceOf(William) + L1.bondBalanceOf(William), 10_000 ether + quarterReward
);
assertEq(totalTkoBalance(tko, L1, James), 10_000 ether - tierOp.validityBond);
assertEq(totalTkoBalance(tko, L1, Taylor), 10_000 ether + quarterReward * 3);
assertEq(totalTkoBalance(tko, L1, William), 10_000 ether + quarterReward);
}
}
}
16 changes: 4 additions & 12 deletions packages/protocol/test/L1/TaikoL1TestGroup4.t.sol
Original file line number Diff line number Diff line change
Expand Up @@ -53,9 +53,7 @@ contract TaikoL1TestGroup4 is TaikoL1TestGroupBase {
assertEq(ts.prover, Taylor);
assertEq(ts.timestamp, block.timestamp);

assertEq(
tko.balanceOf(Alice) + L1.bondBalanceOf(Alice), 10_000 ether - tierOp.validityBond
);
assertEq(totalTkoBalance(tko, L1, Alice), 10_000 ether - tierOp.validityBond);
assertEq(
tko.balanceOf(Taylor),
10_000 ether - tierSgx.validityBond + tierOp.validityBond * 7 / 8
Expand All @@ -80,10 +78,7 @@ contract TaikoL1TestGroup4 is TaikoL1TestGroupBase {
assertEq(ts.tier, LibTiers.TIER_SGX);
assertEq(ts.prover, Taylor);

assertEq(
tko.balanceOf(Taylor) + L1.bondBalanceOf(Taylor),
10_000 ether + tierOp.validityBond * 7 / 8
);
assertEq(totalTkoBalance(tko, L1, Taylor), 10_000 ether + tierOp.validityBond * 7 / 8);
}
}

Expand Down Expand Up @@ -139,7 +134,7 @@ contract TaikoL1TestGroup4 is TaikoL1TestGroupBase {
assertEq(ts.prover, Taylor);
assertEq(ts.timestamp, block.timestamp);

assertEq(tko.balanceOf(Alice) + L1.bondBalanceOf(Alice), 10_000 ether - livenessBond);
assertEq(totalTkoBalance(tko, L1, Alice), 10_000 ether - livenessBond);
assertEq(tko.balanceOf(David), 10_000 ether - tierOp.validityBond);
assertEq(
tko.balanceOf(Taylor),
Expand All @@ -165,10 +160,7 @@ contract TaikoL1TestGroup4 is TaikoL1TestGroupBase {
assertEq(ts.tier, LibTiers.TIER_SGX);
assertEq(ts.prover, Taylor);

assertEq(
tko.balanceOf(Taylor) + L1.bondBalanceOf(Taylor),
10_000 ether + tierOp.validityBond * 7 / 8
);
assertEq(totalTkoBalance(tko, L1, Taylor), 10_000 ether + tierOp.validityBond * 7 / 8);
}
}
}
Loading

0 comments on commit 266c5dc

Please sign in to comment.