Skip to content

Commit 686d969

Browse files
committed
chore: lower referral fee to 2%
1 parent 415d3ec commit 686d969

File tree

2 files changed

+26
-15
lines changed

2 files changed

+26
-15
lines changed

contracts/core/SharesFactoryV1.sol

+1-1
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ contract SharesFactoryV1 is Ownable2Step, ReentrancyGuard {
3434

3535
uint256 public shareIndex;
3636
uint256 public depositedETHAmount;
37-
uint256 public referralFeePercent = 5 * 1e16;
37+
uint256 public referralFeePercent = 2 * 1e16;
3838
uint256 public creatorFeePercent = 5 * 1e16;
3939
uint256 public migrationDeadline;
4040

test/unit/SharesFactory.t.sol

+25-14
Original file line numberDiff line numberDiff line change
@@ -68,47 +68,58 @@ contract SharesFactoryTests is BaseTest {
6868
uint256 aliceBalBefore = addrAlice.balance;
6969
uint256 bobBalBefore = addrBob.balance;
7070
uint256 referrerBalBefore = referralReceiver.balance;
71-
// uint256 factoryBalBefore = aWETH.balanceOf(address(sharesFactory));
7271
uint256 depositedETHAmountBefore = sharesFactory.depositedETHAmount();
7372

73+
(
74+
uint256 buyPriceAfterFee,
75+
uint256 buyPrice,
76+
uint256 referralFee,
77+
uint256 creatorFee
78+
) = sharesFactory.getBuyPriceAfterFee(0, 1, referralReceiver);
7479
_buyShare(addrBob, 0, 1, referralReceiver);
7580

7681
uint256 aliceBalAfter = addrAlice.balance;
7782
uint256 bobBalAfter = addrBob.balance;
7883
uint256 referrerBalAfter = referralReceiver.balance;
79-
// uint256 factoryBalAfter = aWETH.balanceOf(address(sharesFactory));
8084
uint256 depositedETHAmountAfter = sharesFactory.depositedETHAmount();
8185

82-
assertEq(bobBalBefore - bobBalAfter, 5500450999999993); // Bob buy 1 share
83-
assertEq(aliceBalAfter - aliceBalBefore, 250020499999999); // Alice receive creator fee
84-
assertEq(referrerBalAfter - referrerBalBefore, 250020499999999); // referral receive fee
85-
// assertEq(factoryBalAfter - factoryBalBefore, 5000409999999995); // Factory aWETH balance with rounding error
86-
assertEq(depositedETHAmountAfter - depositedETHAmountBefore, 5000409999999995); // Factory records ETH Amount
86+
assertEq(bobBalBefore - bobBalAfter, buyPriceAfterFee); // Bob buy 1 share
87+
assertEq(aliceBalAfter - aliceBalBefore, creatorFee); // Alice receive creator fee
88+
assertEq(referrerBalAfter - referrerBalBefore, referralFee); // referral receive fee
89+
assertEq(depositedETHAmountAfter - depositedETHAmountBefore, buyPrice); // Factory records ETH Amount
8790

8891
uint256 bobShareBal = sharesNFT.balanceOf(addrBob, 0);
8992
assertEq(bobShareBal, 2);
9093
}
9194

95+
function test_buyShareWithHighVolume() public view {
96+
(uint256 buyPriceAfterFee,,,) = sharesFactory.getBuyPriceAfterFee(0, 100000, referralReceiver);
97+
console.log("test_buyShareWithHighVolume", buyPriceAfterFee);
98+
}
99+
92100
function test_sellShares() public {
93101
uint256 aliceBalBefore = addrAlice.balance;
94102
uint256 bobBalBefore = addrBob.balance;
95103
uint256 referrerBalBefore = referralReceiver.balance;
96-
// uint256 factoryBalBefore = aWETH.balanceOf(address(sharesFactory));
97104
uint256 depositedETHAmountBefore = sharesFactory.depositedETHAmount();
98105

106+
(
107+
uint256 sellPriceAfterFee,
108+
uint256 sellPrice,
109+
uint256 referralFee,
110+
uint256 creatorFee
111+
) = sharesFactory.getSellPriceAfterFee(1, 1, referralReceiver);
99112
_sellShare(addrAlice, 1, 1, referralReceiver);
100113

101114
uint256 aliceBalAfter = addrAlice.balance;
102115
uint256 bobBalAfter = addrBob.balance;
103116
uint256 referrerBalAfter = referralReceiver.balance;
104-
// uint256 factoryBalAfter = aWETH.balanceOf(address(sharesFactory));
105117
uint256 depositedETHAmountAfter = sharesFactory.depositedETHAmount();
106118

107-
assertEq(aliceBalAfter - aliceBalBefore, 4500163999999998); // Alice sell 1 share
108-
assertEq(bobBalAfter - bobBalBefore, 250009111111111); // Bob receive creator fee
109-
assertEq(referrerBalAfter - referrerBalBefore, 250009111111111); // Referral receive fee
110-
// assertEq(factoryBalBefore - factoryBalAfter, 5000182222222220); // Factory aWETH balance with rounding error
111-
assertEq(depositedETHAmountBefore - depositedETHAmountAfter, 5000182222222220); // Factory records ETH Amount
119+
assertEq(aliceBalAfter - aliceBalBefore, sellPriceAfterFee); // Alice sell 1 share
120+
assertEq(bobBalAfter - bobBalBefore, creatorFee); // Bob receive creator fee
121+
assertEq(referrerBalAfter - referrerBalBefore, referralFee); // Referral receive fee
122+
assertEq(depositedETHAmountBefore - depositedETHAmountAfter, sellPrice); // Factory records ETH Amount
112123

113124
uint256 aliceShareBal = sharesNFT.balanceOf(addrAlice, 1);
114125
assertEq(aliceShareBal, 0);

0 commit comments

Comments
 (0)